我发现自己被一个本应很简单的问题难倒了。在 Microsoft C++ 中使用表单时,如何使类(在单独的文件中创建)具有全局范围。我可以在文本框离开或按键功能中声明、初始化和使用它,但是当我移动到按钮时,它超出了范围(按钮和文本框具有全局范围,但我只是对它们的操作方式感到困惑)。 问题是要克隆类(对象),这样做有利于拥有全局范围。 我意识到这是作业,我不要求代码,只是指出正确的方向。 谢谢 打碟机
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);
}
最佳答案
您需要使用头文件并将其包含在您的 Form 类中。请记住,如果该类不需要位于同一命名空间中,那么您还必须在表单类中定义 using namespace your_namespace;
或通过 your_namespace::引用您的类对象:类
另请参阅:Introduction to C++
关于c++ - 使 C++ 中的类成为全局应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3543999/