2013-10-24 4 views
0

Методы класса, используемые моим основным, устарели. Я обновил методы cout до терминала, но ничего не отображается. Я положил cout до и после вызова метода, и оба они печатаются. Это заставляет меня думать, что я компилирую неправильно.Основные с использованием устаревших классов

Я приложил мой Makefile:

RM = rm -f 
SRCPATH = . 
SRC = actors/actor.h controllers/AiController.h controllers/Controller.h \ 
controllers/PlayerController.h states/BrawlState.h states/DrinkState.h \ 
states/IdleState.h states/IStateCallback.h states/MineState.h \ 
states/SingState.h states/SleepState.h states/state.h states/statemachine.h \ 
resources/dynamicarray.h resources/hashmap.h resources/hashnode.h \ 
resources/heap.h resources/queue.h resources/stack.h resources/vector3d.h 
TESTNAME = test 
TESTSRC = main.cpp 
# 
retest: re test 

clean: 
    -$(RM) *.o 
    -$(RM) *~ 
    -$(RM) \#* 
    -$(RM) *.core 
    -$(RM) *.gch 

fclean: clean 
    -$(RM) $(TESTNAME) 

re: fclean 

test: 
    g++ $(SRC) $(TESTSRC) -Wall -Werror -std=c++0x -o $(TESTNAME) 
+0

У вас есть только файлы заголовков или файлы '.cpp' тоже? – juanchopanza

+0

У меня есть только заголовочные файлы, потому что они классы. – Taztingo

+0

Это не имеет никакого смысла, но ОК. Вы должны заставить 'test' зависеть от всех заголовков, плюс' main.cpp'. Правильно, не 'test' не имеет зависимостей. – juanchopanza

ответ

1

Вы должны сделать test цели зависит от всех исходных файлов и заголовков, так что изменение в одном из них вызывает повторную компиляцию в следующий раз вам пробег make test:

test: $(TESTSRC) $(SRC) 
    g++ $(SRC) $(TESTSRC) -Wall -Werror -std=c++0x -o $(TESTNAME) 
Смежные вопросы