如何检查模板的哪些部分被实例化?

我有一个巨大的模板文件,只有很less的function被使用,我想隔离这个部分进行testing,并评论另一半。 我怎样才能find最好的办法呢?

我怎样才能在Windows系统上做到这一点,模板文件是.hxx?

我喜欢穆罕默德的回答。 糟糕…他删除了它 – 但基本上 – 使用像nm这样的工具 – 我不知道一个窗口的等价物,但肯定有一个 – 查询对象的瞬时。 虽然您的模板可能在.hxx中,但您只能有意义地讨论由某些客户端代码实例化的方法的子集。 您可能需要在禁用内联的情况下进行此分析,以确保函数体实际上在对象文件中以实际形式实例化。

在不太可能的情况下,你可能已经实例化了一些东西,因为一些代码处理的情况下,你知道数据没有 – 也不会发展到 – 使用,那么你可能更喜欢自动运行时覆盖分析。 许多编译器(例如GCC的g ++ -ftest-coverage)和工具(例如purecov)提供了这个功能。

如何评论整个文件,然后取消链接器投诉时的单个方法的注释,直到程序可以编译?

顺便说一下,如果您使用的是Visual Studio,则注释整个文件只是使用以下快捷键:Ctrl + A,然后Ctrl + K + C。 您可以使用Ctrl + K + U取消选定的行的注释。