最近在windows下用mingw编译一个简单的cpp出现了std::cout
未定义的情况,百度了一番发现是在编译的时候使用了gcc
的命令的问题,用g++
就没有任何问题,但是原因很简单,仅仅是在于gcc
和g++
的区别。
-
gcc
在编译阶段gcc
和g++
没有任何区别,因为g++
是调用gcc
来完成编译的,但是在链接过程中gcc
是不能链接c++库的,所以需要gcc -lstdc++
来指定链接库才可以。 -
g++
编译阶段调用gcc
来完成,在链接阶段可以链接c++库。
综上,gcc
和g++
在链接库上的区别导致了二者在编译cpp文件时的不同。只要都用g++
的就没有问题了。