Если вы, начинающий (ш)кодер, осваиваете классы в С++, переписываете пример из книжки, и внезапно при сборке вашего тестового прожекта студия, до того не видевшая ни единого даже ворнинга, кажет вам такую ошибку - не паникуйте.
Посмотрите внимательно на инклуды. Если сделали что-то вроде этого:
#include
#include "myTestDatabase.h"
#include
#include "stdafx.h"
#include
т.е. влепили инклуд вашей песочницы прежде инклудов библиотек - перенесите ваш #include "myTestDatabase.h" в конец этого списка, и все соберется.
Да, и чтобы, как говорится, два раза не вставать: если та же студия кажет вам на что-то вроде
if(mEmployees[i].getFirstName() == inFirstName)
такое:
IntelliSense: no operator "==" matches these operands d:\c++\testprogram\testprogram\database.cpp 55 37 TestProgram
то добавьте #include , помогает )) (если что - речь о тех строках, которые std::string)
Вообще учить что-то всегда нескучно, особенно если звать на помощь русский интернет. Осваивая новые для себя вещи, бывает, едва ли не расшибаюсь о какие-то такие смешные и простые вещи, о которых фиг найдешь понятное пояснение.
Да, я знаю, что многие спрашивающие не удосуживаются даже прочесть текст ошибки, не то, чтобы подумать о чем там написано. Да, я когда-то было попыталась на sql.ru помогать новичкам, зареклась навеки, потому как вместо изучения исправленного работающего кода и самостоятельных попыток что-то понять лезут со следующей частью своего курсача в почту, аську и вообще на голову.
Отвечающие тоже хороши невероятно. Задает кто-то вопрос на форуме, код выкладывает, скрин с ошибкой, а в ответ тонны копипасты о том, что мол, было вот такое соглашение, что все, чему явно тип не задали, считалось int, но вот с++ это не поддерживает. Как будто в описании ошибки не это же самое написано, а припев из песенки "Пусть всегда будет солнце". А ТС накопипастил где-то кода и вообще дурак. И вот из сотен один таки посмотрит в код и скажет "а ты попробуй свои инклуды написать после системных, оно тоже важно".
Вот смотрю я, как студия эту ошибку кажет на конструктор класса и в толк не возьму, с чего бы надо объявлять конструктор как int, если в книге вот так написано, и по логике вроде тоже ни разу ему тип не нужен, и то ли лыжи не едут, то ли я с ума сошла.
Я ж только учу этот самый с++, мне откуда знать, что имеет значение не только наличие инклудов, но и порядок их написания...