我试图用g ++ 4.4编译并链接一个使用STL的简单程序.我正在尝试使用-fno-implicit-templates来完成它,因此必须显式实例化所有模板.
我不明白为什么这段代码有效:
#include <map>
//template class std::map<char,char>;
template class std::_Rb_tree<char, std::pair <char const, char>,
std::_Select1st<std::pair<char const, char> >,
std::less<char>, std::allocator<std::pair<char const, char> > >;
int main() {
std::map <char,char> table;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我希望这个程序需要行:template class std::map<char,char>;但是该行不会使程序链接.这std::_Rb_tree line是必要的.为什么?
在此先感谢,任何提示将不胜感激.