컴파일러 오류 C3893
'var': initonly 데이터 멤버의 l-value 사용은 'type_name' 클래스의 인스턴스 생성자에서만 허용됩니다.
정적 정적 데이터 멤버는 정적 생성자에서 가져온 주소만 가질 수 있습니다.
인스턴스(비정적) 정적 데이터 멤버는 인스턴스(비정적) 생성자에서 가져온 주소만 가질 수 있습니다.
다음 샘플에서는 C3893을 생성합니다.
// C3893.cpp
// compile with: /clr
ref struct Y1 {
Y1() : data_var(0) {
int% i = data_var; // OK
}
initonly int data_var;
};
int main(){
Y1^ y= gcnew Y1;
int% i = y->data_var; // C3893
}