.cc和.cpp文件扩展名有什么区别?从Google,我了解到它们都来自 C++ ,但我不确定它们之间的差异。
.cc
.cpp
eulz3vhy1#
没有什么区别。它们完全一样。
2o7dmzc52#
实际上,这完全取决于你和你的编译器喜欢什么。它们之间根本没有区别。
disho6za3#
公约。在历史上,C源文件的后缀是.C。这在C第一次移植到文件名中大小写不重要的系统时引起了一些问题。不同的用户采用不同的解决方案:.cc、.cpp、.cxx以及可能的其他。今天,在Unix世界之外,它主要是.cpp。Unix似乎更经常使用.cc。对于头部,情况更加令人困惑:不管出于什么原因,最早的C作者决定不区分C和C的头文件,并使用.h。如果项目中没有C,这不会引起任何问题,但是当你开始必须处理这两个问题时,通常区分可以在C中使用的头文件(.h)和不能在C中使用的头文件(.hh或.hpp)是一个好主意。此外,在C中,很多用户(包括我自己)更喜欢将模板源代码和内联函数保存在单独的文件中。虽然严格来说是一个头文件,但它往往会得到另一组约定(.inl,.tcc,可能还有很多其他约定)。在头文件的情况下,这对编译器来说绝对没有区别。在源文件的情况下,不同的结尾将导致编译器采用不同的语言。但这通常可以被覆盖,我在VC识别它为C++之前很久就在VC ++中使用了.cc。
.C
.cxx
.h
.hh
.hpp
.inl
.tcc
3条答案
按热度按时间eulz3vhy1#
没有什么区别。它们完全一样。
2o7dmzc52#
实际上,这完全取决于你和你的编译器喜欢什么。它们之间根本没有区别。
disho6za3#
公约。
在历史上,C源文件的后缀是
.C
。这在C第一次移植到文件名中大小写不重要的系统时引起了一些问题。不同的用户采用不同的解决方案:
.cc
、.cpp
、.cxx
以及可能的其他。今天,在Unix世界之外,它主要是.cpp
。Unix似乎更经常使用.cc
。对于头部,情况更加令人困惑:不管出于什么原因,最早的C作者决定不区分C和C的头文件,并使用
.h
。如果项目中没有C,这不会引起任何问题,但是当你开始必须处理这两个问题时,通常区分可以在C中使用的头文件(
.h
)和不能在C中使用的头文件(.hh
或.hpp
)是一个好主意。此外,在C中,很多用户(包括我自己)更喜欢将模板源代码和内联函数保存在单独的文件中。虽然严格来说是一个头文件,但它往往会得到另一组约定(
.inl
,.tcc
,可能还有很多其他约定)。在头文件的情况下,这对编译器来说绝对没有区别。
在源文件的情况下,不同的结尾将导致编译器采用不同的语言。但这通常可以被覆盖,我在VC识别它为C++之前很久就在VC ++中使用了
.cc
。