C++ Windows フォーム (マネージ クラス) から呼び出しているアンマネージ クラスがあります。ただし、このクラスを ref クラスとして書き直したいのですが、アンマネージ クラス内で宣言されているグローバル配列メンバーの処理方法がわかりません。
例として、私が何をする必要があるかを示す非常に単純なクラスを書きました。
public class test {
private:
int myArray[5][24];
public:
int assign(int i){
test::myArray[2][4] = i;
return 0;
}
int dosomething(int i){
return test::myArray[2][4] + i;
}
ここには、クラス内のすべての関数からアクセスできるようにするグローバル メンバー配列があります。
Windows フォームには、ボタンとコンボ ボックスがあります。このように、ボタンが押されると、クラス内の関数が呼び出され、結果が表示されます。
private: System::Void thumbButton_Click(System::Object^ sender, System::EventArgs^ e) {
test my_class;
my_class.assign(5);
comboBox1->Text = my_class.dosomething(6).ToString();
}
クラスを ref クラスに変更しようとすると、グローバル配列が管理されていないためにエラーが発生します。これは、配列を直接使用するよりも優れたアプローチですが、同じエラーが発生します。したがって、誰かがこのクラスを ref クラスとして書き直す方法を教えていただければ幸いです。ありがとうございました!