是否有一些g ++选项显示从模板创建的类?例如,原始源代码中有模板定义:
template <class T>
struct SomeStruct { T variable; };
SomeStruct<int> instance;
我希望看到SomeStruct的实现&lt; INT&GT;
答案 0 :(得分:4)
您可以使用-fdump-class-hierarchy
标记获取该信息。它会列出比您要求的更多的内容,但如果搜索以Class
开头的行,您将找到您要查找的内容。
编辑:以下是包含iostream
的程序的一些输出。您可以看到char
和wchar_t
的实例化:
Class std::basic_ostream<char, std::char_traits<char> >
Class std::basic_ostream<char, std::char_traits<char> >::sentry
Class std::basic_ostream<wchar_t, std::char_traits<wchar_t> >
Class std::basic_ostream<wchar_t, std::char_traits<wchar_t> >::sentry
Class std::basic_istream<char, std::char_traits<char> >
Class std::basic_istream<wchar_t, std::char_traits<wchar_t> >
Class std::basic_istream<char, std::char_traits<char> >::sentry
Class std::basic_iostream<char, std::char_traits<char> >
Class std::basic_istream<wchar_t, std::char_traits<wchar_t> >::sentry
Class std::basic_iostream<wchar_t, std::char_traits<wchar_t> >
答案 1 :(得分:-1)
实现就像看起来一样明显:你将实际类型放入T
。
struct SomeStruct<int> { int variable; };