我在 C++/CLI 中制作多个 Windows 窗体以同时运行测试,我可以这样做,但我在我的类中将变量定义为私有,但是当第二个窗体写入其变量版本时,它会为所有其他窗体版本覆盖它这个变量的。
array<String^>^args = Environment::GetCommandLineArgs();
int args1 = System::Convert::ToInt16(args[1]);
int i;
#pragma omp parallel for
for(i = 0; i < args1; i++)
{
Sleep(1000);
Form1^ form1 = gcnew Form1(i);
form1->Show();
}
private ref class Form1 : public System::Windows::Forms::Form
{
private:
static int formnumber;
static SerialPort^ serialPort = gcnew SerialPort();
public:
Form1(int formnum)
{
array<String^>^args = Environment::GetCommandLineArgs();
formnumber = formnum;
int a = 65;
jigid = a + formnum;
comnumber = formnumber + Convert::ToInt16(args[2]);
InitializeComponent();
}
}
当我创建 2 个表单时,formnum 将始终为 1,以供以后在表单中使用,因为第二个表单的创建覆盖了第一个表单中的 formnum。我怎样才能使表格不能覆盖彼此的变量?