我发现自己被一个简单的问题所困扰。在Microsoft C ++中使用表单时,如何使类(在单独的文件中创建)具有全局范围。我可以在文本框离开或按键功能中声明,初始化和使用它,但是当我移动到按钮时它超出范围(按钮和文本框具有全局范围,但我只是被他们如何做到这一点感到难过)。 问题是要复制类(对象),并且要做到这一点,拥有全局范围是有利的。 我意识到这是家庭作业,我不是要求代码,只是指出我正确的方向。 谢谢 DJ
using namespace Circle;
form1 code textBox1->Keypress(...) {
Circle^ C = gcnew Circle(Convert.ToDouble(textBox1->Text)); // write to labels on form the rad, area, and circum
}
button1->click(...) { // I want to make a clone of the instance above
Circle^ C = gcnew Circle(Convert.ToDouble(textBox1->Text));
Circle^ CL = C->Clone(C->Radius); // Clone and radius are members of the class Circle
}
上面的代码有效,因为我再次创建了C.
以下代码不起作用:
button1->clicked(...)
{
Circle CL = C->Clone(C->Radius);
}
答案 0 :(得分:2)
您需要使用头文件并将其包含在Form类中。请记住,如果该类不需要位于同一名称空间中,那么您还必须在表单类中定义using namespace your_namespace;
或通过your_namespace::class
另请参阅:Introduction to C++