C#で数値計算(つづき)
今日は,Vector系クラスの残りであるRowVectorとColVectorを作成し,Streamへの書き出しのあたりをちょっとだけ勉強しました.
ちょっと引っかかったこと
【MSDN】
コンパイラ エラー C2662
/clr を指定してコンパイルする場合は、const または volatile で修飾されたマネージ型で関数を呼び出すことはできません。マネージ クラスの const メンバ関数を宣言することはできないので、const マネージ オブジェクトでメソッドを呼び出すことはできません。
つまりですね,
ref class Hoge {
private:
int value;
public:
property int Size
{
int get() { return value; }
}
};
void Func( const Hoge^ h )
{
int s = h->Size; // C2662
}
ということができません.
「この関数の中では,渡された引数の内容を書き換えませんよー」ということを明示するためにconstを使いたいのですが,できないということになります.
むむむ...,仕方が無いのでconstをとります.(−"−;