[问题] 请问macro有相关的翻译器吗?

楼主: liu2007 (è–¯)   2021-06-09 14:26:53
这个问题我不知道在这边发问是不适合@@
其实我不知道这个想法会不会太过旁门左道
“蛤? 你居然不想自己一层一层慢慢去翻译,懒到这种程度?”
不过我也不晓得这个问题因为大家自己替换的能力太强了,
还是说是因为实务上真的没必要
还是可能在开始编译之前都不知道被替换成怎么样子
最近在看知名程式的原始码
我井底之蛙,第一次看到Macro可以一直套一直套像是不用钱一样(还真的不用钱)
其中还参杂typedef互相套,看到后面直接花掉
想请问QT或是其他IDE有没有可以“鼠标移过去,就自动跳出一个视窗,
里面是显示Macro转译的最终结果”
这样,或是类似的功能?
如果没有这种功能,是因为实际上真的不必要
还是有一些东西要执行后才知道结果?
另外想请问大家在阅读原始码的时候都是怎么跟macro这些俄罗斯娃娃相处的?
感谢阅读
作者: idiont (supertroller)   2021-06-09 14:34:00
g++ -E
作者: noahleft (NoahLeft)   2021-06-09 15:03:00
你要最终转译结果只能靠g++ -E了或者是找看看doxygen能不能解译
作者: james732 (好人超)   2021-06-09 18:21:00
VSCode可以做到一定程度的展开,像这样:https://imgur.com/a/2SjTcSC
作者: chuegou (chuegou)   2021-06-09 21:10:00
输出预处理结果阿 或是加一行#error当断点
作者: Lipraxde (Lipraxde)   2021-06-09 22:02:00
俄罗斯娃娃XDD
作者: galic (嘎利)   2021-06-10 21:44:00
vscode+clangd
作者: qscgy4 (有点厉害)   2021-06-11 14:02:00
这就是C/C++的厉害,见识到了吧!
作者: b0920075 (Void)   2021-06-11 14:09:00
macro 其实跟编译器提供的支援比较有关

Links booklink

Contact Us: admin [ a t ] ucptt.com