为什么gcc可以编译C++代码却无法链接?

sol*_*tim 2 gcc

我知道c ++代码应该由g ++编译和链接,而不是gcc.但是为什么gcc仍然可以编译c ++源代码,尽管源代码中有很多c ++关键字.

顺便说一句,我发现我甚至可以用gcc和所有c ++代码构建一个共享库.为什么?

Wil*_*ill 9

g ++是gcc,它只是自动链接到标准C++库.

如果你的g ++代码依赖于标准库(std命名空间中的东西),你可以

  1. 使用g ++命令,它是全自动的
  2. 使用gcc命令,并明确指定C++标准库(-lstdc++)