我试图访问.NET结构成员,但即使这个简单的例子编译失败:
。H:
using namespace System::Drawing;
namespace MyNamespace{
public ref class MyClass{
public:
MyClass();
static const System::Drawing::Size MinimumSize = System::Drawing::Size(20,20);
}
}
CPP:
#include "MyInclude.h"
MyClass::MyClass(){
int i = MinimumSize.Width;
// .....
}
将MinimumSize.Width分配给局部变量i的语句无法编译:
当我删除声明中的“const”时,赋值编译没有错误,但我想将值保持为public和read-only。
有人可以给我一个提示如何指定吗?
我刚尝试过:当我尝试将MinimumSize.Width分配给'i'时,'initonly'产生两条消息:
加上信息
我正在使用这个解决方案:
int i = (( System::Drawing::Size)MinimumSize).Width;
这个演员摆脱'const',编译时没有任何错误/警告并按预期执行。或者这有点过于粗暴?
关心PaulTheHacker