Я пытался разработать библиотеку C ++ / CLI для использования в C #, и у меня возникла следующая проблема. Если мы возьмем мой управляемый эталонный класс следующим образом:
namespace Library
{
using namespace System;
public ref class Test
{
internal:
String^ internalString;
public:
Test()
{
internalString = gcnew String("Hey There");
}
~Test()
{
}
};
public ref class TestImplement
{
public:
static String^ TestMessage(Test test)
{
return test.internalString;
}
};
}
И моя реализация C # следующим образом:
using System;
namespace AddProgram
{
class Program
{
static void Main(string[] args)
{
Library.Test test = new Library.Test();
Console.WriteLine(Library.TestImplement.TestMessage(test));
Console.Read();
}
}
}
, я получаю следующую ошибку:
ошибка CS0570: 'TestMessage' не поддерживается язык
Насколько я могу судить, это связано с передачей типа Library.Test в качестве аргумента. Я не понимаю, почему получаю это сообщение, и надеюсь, что можно передавать типы из моей справочной библиотеки.
Любая помощь приветствуется