Я спорадически обучал себя cpp из «ускоренного C ++», и недавно я заметил, что когда я забыл свое утверждение #include <algorithm>
, мой код (который включает transform и find_if) скомпилирован и в любом случае успешно выполняется.После этого я попытался удалить все стандартные операторы include заголовка и обнаружил, что мой код все еще работает.
Я предполагаю, что моя неспособность понять команды препроцессора будет решена к тому времени, когда я закончу книгу, но сейчас мне просто нужно знать, как убедиться, что мой терминал кричит на меня, когда я делаю заголовок неправильно, такЯ могу узнать, где что находится в библиотеке std.
Я использую ОС 10.6.5, поэтому мне нужно скомпилировать мой код с помощью следующего exe-файла unix:
CC = g++
CFLAGS = -Wall
PROG = TrainingProject23
SRCS = TrainingProject23.cpp
ifeq ($(shell uname),Darwin)
LIBS = -framework OpenGL -framework GLUT
else
LIBS = -lglut
endif
all: $(PROG)
$(PROG): $(SRCS)
$(CC) $(CFLAGS) -o $(PROG) $(SRCS) $(LIBS)
clean:
rm -f $(PROG)
, который включает в себяпротокол сборки для OpenGL, потому что я также изучаю это, и этот файл достаточно легко использовать для компиляции всех моих проектов C ++.Я не очень понимаю Makefile, кроме того, как изменить файл src и имя программы, я только что получил его из интернета.