[語法] 請問 "unique_variable_name##__LINE__" 是什麼

看板C_and_CPP (C/C++)作者 ( )時間15年前 (2010/07/30 18:12), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
出處是code project中的 Function Calling Sequence Tracer Class http://www.codeproject.com/KB/debug/SequenceTracer.aspx 其中有一個 macro 看不太懂 "unique_variable_name##__LINE__" #ifdef _DEBUG #define SEQ_TRACE(txt) SequenceTracer unique_variable_name##__LINE__ (txt) #define SEQ_START(fileName) SequenceTracer::Start(fileName) #else #define SEQ_TRACE(txt) #define SEQ_START(fileName) #endif // Thanks to Michael Dunn for ##__LINE__ 網路上查了一下 __LINE__ : 似乎是代表目前的所在行數 ## : 似乎是"merging" operator 但 unique_variable_name 實在是找不到 麻煩大大給點指引了 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.96.63.154

07/30 19:27, , 1F
我用g++編譯 那個 __LINE__ 沒有被替換成行號 真怪...
07/30 19:27, 1F

07/30 21:28, , 2F
## 就是串接文字用的。
07/30 21:28, 2F
文章代碼(AID): #1CKgMTW8 (C_and_CPP)
文章代碼(AID): #1CKgMTW8 (C_and_CPP)