0
我在C#中聲明如下界面時未定義:基類包括.cpp文件頭文件
public interface ArtistInterface
{
bool Flag { get; set; }
string Artist { get; set; }
int App { get; set; }
}
而且我想在C++/CLI來實現的:
implementation.h
public ref class Artist: public ArtistInterface
{
Artist(String^ name);
Artist(String^ name, int number);
bool flag;
String^ name;
int appearance;
property bool Flag
{
virtual bool get() sealed
{
return flag;
}
void set(bool value)
{
if (flag != value)
{
flag = value;
}
}
}
property String^ Name
{
virtual String^ get() sealed
{
return name;
}
void set(String^ value)
{
if (name != value)
{
name = value;
}
}
}
property int App
{
virtual int get() sealed
{
return appearance;
}
void set(int value)
{
if (appearance != value)
{
appearance = value;
}
}
}
}
現在一切正常,但如果我添加一個.cpp文件來實現2個構造函數,在包含「implementation.h」之後,我得到以下錯誤:
Artist
: base class undefined
任何想法我得到這個?我錯過了一些東西,我對這個C++/CLI完全陌生。
是的,我有.cpp文件,我的頭文件還包括聲明接口的.dll文件。 – Kobe
更準確地說出你需要檢查什麼的答案。 –
看起來問題在於我需要聲明set()函數爲虛擬的,因爲我在界面中聲明瞭set,plz也將它添加到您的答案中,所以我可以接受它。 – Kobe