C++ source files conventionally use one of the suffixes `.C',
`.cc', `cpp', or `.cxx'; preprocessed C++ files use the
suffix `.ii'. GNU CC 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
However, C++ programs often require class libraries as well as a
compiler that understands the C++ language--and under some
circumstances, you might want to compile programs from standard input,
or otherwise without a suffix that flags them as C++ programs.
g++ is a program that calls GNU CC with the default language
set to C++, and automatically specifies linking against the C++
(1) On many systems, the script
g++ is also
installed with the name
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. See section Options Controlling C Dialect, for explanations of options for languages related to C. See section Options Controlling C++ Dialect, for explanations of options that are meaningful only for C++ programs.