Множественное объявление функций
Есть файл 1.сpp в нем функция func1()
Есть файл 2.срр в нем функция func2(), которая использует func1().
Есть файл 3.срр, где используется функция func2().
Если делать проект, со всеми тремя файлами, потом include`ть первый во второй, а второй в третий, то возникает ошибка:
1.obj : error LNK2005: "int __cdecl func1(int)" (?func1@@YAHH@Z) already defined in 3.obj
К чему бы это и как бороться... (метод объявления inline`ом не предлагать, как неинтересный)...
Заранее спас...
Попробуй установить флаг Force file output в категории Customize в Project settings\Link или /FORCE:MULTIPLE
Цитата:
Originally posted by molnij
Следующая ситуация.
Есть файл 1.сpp в нем функция func1()
Есть файл 2.срр в нем функция func2(), которая использует func1().
Есть файл 3.срр, где используется функция func2().
Если делать проект, со всеми тремя файлами, потом include`ть первый во второй, а второй в третий, то возникает ошибка:
1.obj : error LNK2005: "int __cdecl func1(int)" (?func1@@YAHH@Z) already defined in 3.obj
К чему бы это и как бороться... (метод объявления inline`ом не предлагать, как неинтересный)...
Заранее спас...
Следующая ситуация.
Есть файл 1.сpp в нем функция func1()
Есть файл 2.срр в нем функция func2(), которая использует func1().
Есть файл 3.срр, где используется функция func2().
Если делать проект, со всеми тремя файлами, потом include`ть первый во второй, а второй в третий, то возникает ошибка:
1.obj : error LNK2005: "int __cdecl func1(int)" (?func1@@YAHH@Z) already defined in 3.obj
К чему бы это и как бороться... (метод объявления inline`ом не предлагать, как неинтересный)...
Заранее спас...
Ктож инклудит .cpp в .cpp?
Почему бы не использовать .h ?
Можно создать один .h, в котором объявить все три ф-ции, а потом подключить их ко всем этим .cpp
Если уж нужно именно включить один .cpp в другой, исключи все кроме последнего (3.cpp) из компиляции. Но я бы не советовал.
Цитата:
Originally posted by Green
В догонку
В догонку
А вообще-то, в с++ объявлять (declaration) как ф-цию, так и переменную можно сколько угодно раз, а вот определять (definition) только один раз.