次のファイルがあります:
interface.h
class Interface
{
...
};
Interface* CreateInterface();
impl.h
#include "interface.h"
class Impl: public Interface
{
...
};
impl.cpp
#include "impl.h"
SomeInterface* CreateInterface()
{
return new Impl;
}
...
main.cpp
#include "Interface.h"
int main()
{
CreateInterface();
}
もともと私のプロジェクトはこれが好きでした。ただし、テスト目的のために、すべてのファイルは現在同じプロジェクトにあります。
コンパイルすると、CreateInterface が解決されていないという LNK2019 エラーが発生します。私はVS 2008を使用していますが、何が問題なのかわかりません。