Учитывая следующий тестовый интерфейс (C #):
public interface ITest
{
UInt32 Simple(UInt32 someArg);
byte* Read(UInt32 count);
void Write(byte* buf, UInt32 count);
byte[] ReadArray(UInt32 count);
void WriteArray(byte[] buf);
}
Могу ли я реализовать этот интерфейс в c ++ / cli?Я пробовал миллион разных способов;в настоящее время у меня есть это:
typedef unsigned __int32 uint32;
typedef unsigned char byte;
public ref class CTest : public ITest
{
virtual uint32 Simple(uint32 someArg);
virtual byte * Read(uint32 count);
virtual void Write(byte * buf, uint32 count);
virtual System::Array<byte>^ ReadArray(uint32 count);
virtual void WriteArray(System::Array<byte>^ buf);
}
Компилятор VC2010 горько жалуется на все методы, кроме CTest :: Simple, утверждая, что я не реализовал интерфейс.
Может кто-нибудь показать мнемагия c ++ / cli для реализации интерфейса, который передает либо byte *, либо byte [] (предпочтительно оба)?Я нахожусь в конце моего ума ...