Тепер, коли я розділив класи на .h та .cpp-файли, чи потрібно мені використовувати makefile чи можу я все-таки використовувати команду "g ++ main.cpp"?
Складання декількох файлів одночасно є поганим вибором, якщо ви збираєтеся помістити його в Makefile.
Зазвичай у Makefile (для GNU / Make ) достатньо написати:
# "all" is name of the default target, running "make" without params would use it
all: executable1
# for C++, replace CC (c compiler) with CXX (c++ compiler) which is used as default linker
CC=$(CXX)
# tell which files should be used, .cpp -> .o make would do automatically
executable1: file1.o file2.o
Таким чином make
було б правильно перекомпілювати лише те, що потрібно перекомпілювати. Можна також додати декілька налаштувань, щоб генерувати залежність файлів заголовка - так що make також би належним чином відновити те, що потрібно відновити через зміни файлу заголовка.
g++ *.cpp -o output