Делаю небольшой проект в вижаке, возникла проблема.
В проекте три файла - назовем их main.cpp, my_class.cpp и my_class.hpp
В my_class.hpp лежит описание класса, и еще одна функция в виде
my_class
{
my_class(int count);
my_method1(type var);
<...>
}
my_function();
короче, стандартный хедэр, без темплэйтов или других проблемных мест, я его смотрел уже несколько раз, все верно
в my_class.cpp, соответственно, реализации функций из него
в main.cpp, соответственно, функция main, ссылающаяся на my_class и три его метода
собственно, проблема в том, что при сборке проекта, а вернее при линковке, возникают ошибки LNK2019 (студия говорит, что не может найти в объект-файле функции, на которые ссылается main)
в ходе шаманства я попробовал перенести содержимое my_class.cpp в конец .hpp файла. тогда ошибки поменялись на обратные - студия скомпилила .hpp файл, и ругалась на дублирующиеся методы из-за инклюда
P.S. не знаю, имеет ли это отношение к проблеме, но я при этом всем еще юзаю boost::threads и boost::filesystem, но на них ошибок вроде нет
P.P.S. другие языки/компиляторы не предлагать, если бы можно было юзать g++ и CMake, я бы давно уже все собрал, но, к сожалению, надо именно студию.
Примечание:
Если бы я потерял буковку, реагировал бы InteliSense (или как его правильно). А вообще, решил проблему созданием нового проекта и добавлением в него файлов с кодом. Все заработало))
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.