cmake CMakeLists.txt 文件中 CXX 中的“XX”是什么。
它有什么意义。
为什么它是“XX”而不是针对 CPP 文件的 PP?
XX
代表“++”(每个X
都像旋转了 45° 的“加号”),CXX
代表“C++”。
为什么是“ CXX
”?
C++
”是不可能的(它们不能包含 a +
);CPP
”(代表“C Plus Plus”)通常已经用来表示“ C P re P处理器”。例如,在 GNU Makefile 中,您可以定义以下“变量”:
CPPFLAGS
: C 预处理器的额外标志(也用于 C++)。CFLAGS
: C 编译器的额外标志。CXXFLAGS
: C++ 编译器的额外标志。(通常您将CPPFLAGS
andCFLAGS
用于 C 项目,CPPFLAGS
andCXXFLAGS
用于 C++ 项目。)
另请参阅GNU Make和CFLAGS 与 CPPFLAGS中 CPPFLAGS 和 CXXFLAGS 之间的区别。
也相关:正确的 C++ 文件扩展名(和重复的链接)。
许多文件系统不允许+
在文件名中使用,这就是为什么多年来为 C++ 源文件出现了许多命名约定的原因,.cpp
包括..cc
.cxx
CMake 也有类似的问题,因为它的宏语言是围绕不允许包含特殊字符(如+
. 这只是一个限制,以防止 CMake 的解析器变得过于复杂。所以无论何时他们写作CXX
,他们真正的意思是公正C++
。