У меня есть этот код, написанный в CLR C++:
namespace NS{
public class B {
public:
B()
{
int k = 1 + 1;
}
static int K;
int getId()
{
return 0;
}
static double getId2()
{
return 0;
}
};
}
Я компилирую его в dll и использую DotPeek, и я получаю такой результат:
namespace NS
{
[CLSCompliant(false)]
[NativeCppClass]}
[StructLayout(LayoutKind.Sequential, Size = 1)]
public struct B
{
}
}
А также с использованием отражения С# следующим образом:
var module = Assembly.Load("MyCLRCPP").Modules.First();
foreach (var data in module.GetFields())
{
Debug.WriteLine(data.Name);
}
Я получаю только какую-то тарабарщину:
__unep@?DoNothing@DefaultDomain@@@$$FCGJPAX@Z __unep@?_UninitializeDefaultDomain@LanguageSupport@@@$$FCGJPAX@Z
Мой вопрос: Почему там нет кода?
ref class
. - person Hans Passant   schedule 28.12.2015