Проблема не в проблеме компиляции, а в проблеме компоновки.
Согласно вашим пояснениям у вас будет несколько файлов для компиляции:
Patient.h
Patient.cpp --> Implementation --> object module
Procedure.h
Procedure.cpp --> Implementation --> object module
...
После того, как все файлы скомпилированы и созданы соответствующие двоичные объектные модули, компоновщик соберет части вместе и создайте исполняемый файл.
Но чтобы создать исполняемый файл, компоновщик должен также знать, с чего должно начинаться выполнение программы. Это называется точкой входа.
В C ++ точкой входа обычно является функция main()
. Если у вас его еще нет, чего-то не хватает для завершения sh процесса сборки.
В вашем случае компоновщик запрашивает функцию winmain
. Это плохо для вас: это означает, что настройки вашего проекта сообщают IDE, что вы хотите создать приложение GUI для windows, а не приложение командной строки.
Поскольку вы используете cout
и обычный консольный ввод / вывод, я думаю, что вы не собираетесь делать программу GUI и что GUI является неправильной настройкой. Вы должны найти, как изменить этот параметр в IDE.