用户定义的用于g ++编译的C++文件扩展

Dr.*_*ana 1 c++ c++11 g++4.9

出于某种原因,我想使用扩展.cxy来用作c ++源代码.比如,文件名是abc.cxy.但是,我的g++(4.9.2版本)无法编译.我正在编译为:

g++ -o abc.oxy abc.cxy
Run Code Online (Sandbox Code Playgroud)

它抱怨为:g++: warning: conn.cxy: linker input file unused because linking not done 并且,目标文件abc.oxy没有被制作.然而,如果我有扩展名.cxx,并编译为:

g++ -o abc.oxy abc.cxx
Run Code Online (Sandbox Code Playgroud)

它正在制作abc.oxy 我不允许使用除以外的扩展名.c, .cpp, .cxx吗?

Sto*_*ica 5

尝试 g++ -o abc.oxy -x c++ abc.cxy

g++ 无法从自定义后缀中推断出正确的语言,以及任何无法推断为源的语言,它都会直接作为目标文件传递给链接器.

我不允许使用除以外的扩展名.c, .cpp, .cxx吗?

如果您希望GCC自动推断源语言,则不是.约定已经​​到位,因此我们不必明确,但您仍然可以使用该-x选项.