У меня есть CPP с внешними функциями "C".Если они все в одном файле, все отлично работает.Я хочу разделить функции на разные файлы только для организационных целей.
Итак, допустим, у меня есть два файла:
File_One.cpp
#pragma once
#include "stdafx.h"
#include <windows.h>
#include "Functions.h"
#include "Variables.h"
#include <string>
#include "File_Two.cpp"
extern "C"
{
__declspec(dllexport) void MethodOne()
{
MethodTwo();
}
}
File_Two.cpp
#pragma once
#include "stdafx.h"
#include <windows.h>
#include "Functions.h"
#include "Variables.h"
#include <string>
extern "C"
{
__declspec(dllexport) void MethodTwo()
{
}
}
Я попытался переставить заголовки включения в другом порядке, и даже не помещал заголовки include в file_one.cpp, кроме include для file_two.cpp, но всегда получаю одни и те же ошибки.
1) ошибка LNK1169: найден один или несколько кратно определенных символов
2) ошибка LNK2005: _MethodTwo уже определен в File_One.obj
Что именно я делаю неправильно?Что я должен сделать, чтобы это исправить?
Спасибо!