$ gcc --help
-x <language> Specify the language of the following input files
Permissible languages include: c c++ assembler none
'none' means revert to the default behavior of
guessing the language based on the file's extension
$g++ --help
-x <language> Specify the language of the following input files
Permissible languages include: c c++ assembler none
'none' means revert to the default behavior of
guessing the language based on the file's extension
Compiling C++ Programs
C++ source files conventionally use one of the suffixes .C, .cc, .cpp, .CPP, .c++, .cp, or .cxx; C++ header files oftenuse .hh, .hpp, .H, or (for shared template code) .tcc; and preprocessed C++ files use the suffix .ii. GCC recognizes
files with these names and compiles them as C++ programs even if you call the compiler the same way as for compiling C
programs (usually with the name gcc).
However, the use of gcc does not add the C++ library. g++ is a program that calls GCC and automatically specifies
linking against the C++ library. It treats .c, .h and .i files as C++ source files instead of C source files unless -x
is used. This program is also useful when precompiling a C header file with a .h extension for use in C++ compilations.
On many systems, g++ is also installed with the name c++.
When you compile C++ programs, you may specify many of the same command-line options that you use for compiling programs
in any language; or command-line options meaningful for C and related languages; or options that are meaningful only for
C++ programs.
gcc 如果指定 -xc++ 就会将输入文件认为是c++文件 g++也有对应选项
gcc不会自动链接c++库,g++在调用gcc时自动链接的是c++库