c++ - 使 C++ 中的类成为全局应用程序

标签 c++

我发现自己被一个本应很简单的问题难倒了。在 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/

相关文章:

c++ - Boost python,嵌入时从python调用c++函数

c++ - 如何通知系统创建新设备?

c++ - 一旦在任何窗口内运行动画,qt QML 中的多个窗口就会开始闪烁/闪烁

c++ - 如何根据编译器指令 -D 自动选择 include.h 文件?

具有继承的 C++ 范围解析用法

c++ - 为什么大型本地数组会使我的程序崩溃,而全局数组却不会?

c++ - 共享变量的竞争条件

c++ - 如何从内存分配中逐一释放数组成员

c++ - Boost 快速池分配器有函数指针问题?

c++ - C++中的隐式类型转换字母