c++
является стандартным именем компилятора C++
на системе.
В системе GNU вы почти наверняка GCC
(коллекция компиляторов GNU) установлен, который включает в себя компилятор C++
с именем g++
(«г» для GNU). Но для совместимости с POSIX они устанавливают этот компилятор также как c++
, иногда c++
- это символическая ссылка на g++
, иногда это жесткая ссылка, иногда это тот же самый файл, установленный дважды.
Этого не может быть в случае других систем, таких как FreeBSD или NetBSD. Возможно, что в этих системах нет GCC (и других материалов GNU).
В моей системе эти два файла просто идентичны:
% diff `which c++` `which g++`
% echo $?
0
Это означает, что c++
по крайней мере, вызывает тот же компилятор, но теоретически он может интерпретировать некоторые параметры командной строки по-разному или имеют различные значения по умолчанию. Кто-то, у кого больше знаний, может свободно ответить на этот вопрос.
'cc' и' C++ '- это имена компиляторов POSIX. Скорее всего, 'C++' будет символической ссылкой на 'g ++' и 'cc' на' gcc'. –
Возможный дубликат [В чем разница между g ++ и gcc?] (Https://stackoverflow.com/questions/172587/what-is-the-difference-between-g-and-gcc) –