次の方法で共有


コンパイラ エラー C3893

'var': initonly データ メンバーの左辺値は、クラス 'type_name' のインスタンス コンストラクターだけで使用できます

静的な initonly データ メンバーは、静的コンストラクターでのみアドレスを取得できます。

インスタンス (非静的) initonly データ メンバーは、インスタンス (非静的) コンストラクターでのみアドレスを取得できます。

次の例では 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
}