问题总结

  • 使用正确的源文件后缀名

    注意区分C和C++源文件的后缀名.

    因为cmake会根据源文件的后缀名来判断是C还是C++源文件, 是调用 gcc 还是 g++; 使用名不符实的后缀名, 会导致一些稀奇古怪的问题; 因为gccg++编译时, 生成标识名称的规则不一样, 可能会导致undefined reference问题.