看板 C_and_CPP 關於我們 聯絡資訊
這個問題我不知道在這邊發問是不適合@@ 其實我不知道這個想法會不會太過旁門左道 「蛤? 你居然不想自己一層一層慢慢去翻譯,懶到這種程度?」 不過我也不曉得這個問題因為大家自己替換的能力太強了, 還是說是因為實務上真的沒必要 還是可能在開始編譯之前都不知道被替換成怎麼樣子 最近在看知名程式的原始碼 我井底之蛙,第一次看到Macro可以一直套一直套像是不用錢一樣(還真的不用錢) 其中還參雜typedef互相套,看到後面直接花掉 想請問QT或是其他IDE有沒有可以「滑鼠移過去,就自動跳出一個視窗, 裡面是顯示Macro轉譯的最終結果」 這樣,或是類似的功能? 如果沒有這種功能,是因為實際上真的不必要 還是有一些東西要執行後才知道結果? 另外想請問大家在閱讀原始碼的時候都是怎麼跟macro這些俄羅斯娃娃相處的? 感謝閱讀 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.225.144 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1623220018.A.F24.html
idiont: g++ -E 06/09 14:34
noahleft: 你要最終轉譯結果只能靠g++ -E了 06/09 15:03
noahleft: 或者是找看看doxygen能不能解譯 06/09 15:04
james732: VSCode可以做到一定程度的展開,像這樣: 06/09 18:21
james732: https://imgur.com/a/2SjTcSC 06/09 18:21
chuegou: 輸出預處理結果阿 或是加一行#error當斷點 06/09 21:10
Lipraxde: 俄羅斯娃娃XDD 06/09 22:02
galic: vscode+clangd 06/10 21:44
qscgy4: 這就是C/C++的厲害,見識到了吧! 06/11 14:02
b0920075: macro 其實跟編譯器提供的支援比較有關 06/11 14:09
kkmoon5566: eclispe可以 08/07 21:57