对本地实例化对象的访问
Access to a locally instantiated object
我知道这是一个新手问题,但是我遇到了一点麻烦。
让我们假设我正在尝试向我创建的文本字段写入一些内容。
我将在入口点内实例化textField类。main.cpp:
#include "textField.h"
void main()
{
textField field;
field.show();
}
现在,在另一个源文件中,我将尝试向textField写入一些内容。
hello.cpp
#include "textField.h"
void sayHello()
{
field.write("Hello!");
}
让我们假设sayHello()在将来某个时候在main()函数之外的其他地方被调用。我们还假设许多其他文件需要访问TextField的实例。
当然,这段代码不会工作,所以我的问题是:哪种方法是推荐能够从另一个文件访问TextField类的实例?
经过一番研究,我发现了一些解决方案,如使textField成为单例,或一些巧妙的使用指针,甚至使实例成为全局变量,但我不确定这些是最佳的方法。我试图保持全局变量到最小。
我能够自己找到解决方案,但是我想要一些关于这种示例的最佳编码实践的输入
如果这个textField是一个真正的UI小部件,我猜你可以通过window HWND或其他你正在使用的UI库来获得它。
如果这个textField只是一个普通类的示例名称,我认为你可以创建一个名为"GlobleVariable"的类或任何名称,并将你想要全局使用的实例移动到这个类中。这个类可以是单例的
相关文章:
- 使用迭代器时如何访问对象在向量中的位置?
- 无法通过指针访问对象的成员
- 如何从传递到对象的对象内部访问对象的类属性?
- 有没有办法在C++中循环访问对象的不同数据成员
- 如何访问对象动态数组中的私有成员变量?
- c++ 循环访问对象列表并删除对象
- 循环访问对象列表 c++
- 访问对象的取消引用值的语法
- 如何访问对象的成员变量的取消引用值
- C++:访问对象内部子对象的方法
- 如果访问对象,则指向的对象内部的指针会更改内存位置
- 是否可以从 C++ 中的构造函数访问对象名称?
- 仅允许访问对象的成员,而不允许访问对象本身
- 从地图访问对象会导致新对象C 的实例化
- 如何在数组中访问对象内的字符串
- 在C 中运行时从指针访问对象实例
- 有关使用矢量迭代器访问对象方法的问题
- 当对象的指针存储在矢量中时,如何访问对象中的方法?
- 显式调用"运算符 new"后无法访问对象的函数
- 尝试访问对象数组中的对象,但只保存了一个对象