Кроме заголовочного файла, что вам нужно использовать функции, определенные в заголовке - PullRequest
0 голосов
/ 31 января 2011

У меня есть файл myheader.h, я успешно включил его в мой проект VC ++, но я не могу использовать ни одну из его функций. Выдает ошибку Unresolved external symbol (определение моей функции). Чего мне не хватает?

//Here is my code snippet
#include "myHeaders/myheader.h"
void main (){
    head_gen();
}

Не строит и ошибка

Unresolved external symbol void__head_gen()

и т.д.. Это как-то связано с файлом .lib или чем-то другим?

Ответы [ 2 ]

2 голосов
/ 31 января 2011

Вам нужна реализация функции head_gen().Это может быть

  • исходный файл,
  • объектный файл или
  • библиотека

У вас должен быть один из нихполучил с заголовочным файлом.

Если у вас есть файл .cpp, добавьте его в свой проект.

Если у вас есть файл .obj или .lib, добавьте его в качестве зависимости в свойствах проекта:

Configuration Properties / Linker / Input -> Additional Dependencies

Если файл .obj или .lib находится в другом каталоге, чем ваш проект, не забудьте добавить путь:

Configuration Properties / Linker / General -> Additional Library Directories
1 голос
/ 31 января 2011

Я занимаюсь в основном Linux и использую vi в качестве редактора. Но когда я вижу такие ошибки, это обычно происходит по одной из следующих причин:

  1. Функция head_gen() определена в namespace, а исходный код, в котором используется head_gen(), не имеет оператора using namespace.
  2. Был ли head_gen() определен в myHeader.cpp? Это может быть еще одной причиной, почему функция не «видима».

НТН,
Sriram

...