摘要:
转自:http://www.360doc.com/content/10/0124/01/79031_14262123.shtml我们在编译c/c++代码的时候,有人用gcc,有人用g++,于是各种说法都来了,譬如c代码用gcc,而c++代码用g++,或者说编译用 gcc,链接用g++,一时也不知哪个说法正确,如果再遇上个extern "C",分歧就更多了,这里我想作个了结,毕竟知识的目的是令人更清醒,而不是更糊涂。误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;后缀为.cpp的 阅读全文
摘要:
1,展开头文件2,编译cpp文件3,链接在编译的时候如果需要外部类型,编译器会做一个标记,留待链接器来处理。链接器如果找不到需要的外部类型就会发生链接错误。对于模板,单独的模板代码不能被正确编译的,需要一个实例化器产生一个模板实例后才能编译。因此,不能寄希望于链接器来链接模板的成员函数,必须保证在实例化模板的地方模板代码是可见的。 阅读全文