Eee ......我甚至都不知道我所称的这个名字是否正确......但我想知道是否有一个C++模板跟踪器在那里.它的功能类似于GCC编译器的-E
开关(扩展所有宏),唯一的区别是它会为模板显示相同的东西,例如创建了哪些类,以及部分特化,源代码,模板化方法称为模板参数推导等...
是否有一些实用程序可以让我检查模板实例化?我的编译器是g ++或Intel.
具体要点我想:
@gf用简单的打印方式帮我,C++模板名称漂亮打印.
然而,我正在进入提升凤凰和模板级别使得很难理解发生了什么,我想要智能解决方案
另外,如果你有一些检查模板实例化的技术,请你分享一下.
谢谢
是否有工具将C++中的源代码转换为C/C++中的源代码,但是使用实例化(展开)模板?这对于明确理解C++模板转换的代码是必要的.可能它存在于IDE(MSVS,QtCreator,...)或编译器(ICC,GCC,MSVC,Clang)中?
是否有编译器或独立预处理器,它采用C++文件并运行模板扩展传递,生成具有扩展模板实例的新C++代码?
我记得90年代中期这样一个工具,当模板仍然是新的和实验性的时候,预处理器是一种在没有本机模板支持的情况下使用编译器进行模板编程的方法.
这比宏处理步骤复杂得多,因为它可能需要解析和标记代码以理解上下文.
我希望在编写OpenCL代码时使用这样的工具. OpenCL是C++,但不支持模板.我希望我可以编写模板,甚至是简单的模板,比如整数或bool唯一的参数,并且有一些工具预先解析文件并通过查找模板的使用并扩展调用并给我新的C++代码OpenCL编译器可以理解.
即使是非常有限的工具也可能有用,它不需要支持每个模板的怪癖,甚至不需要支持多个模块或任何东西.
替代方案:#define
宏到处都是..丑陋,不安全,效率低下,用途不多.