访问另一个类中的全局指针
我已经在一个类中全局定义了一个列表作为指针:
class1.cpp
type list[1000];
type *p_list = list;
现在我想使用这个列表并向其中放入一些值。 中,
这应该发生在另一个类的方法class2.cpp
mousePressEvent_from_class_2()
{
p_list[counter].x = pos().x();
}
但编译器告诉我它不知道 p_list。我怎样才能改变这一点?
I have defined globally a list in one class as a pointer:
class1.cpp
type list[1000];
type *p_list = list;
Now I want to use this list and put some values into it. This should happen in another class, in a method
class2.cpp
mousePressEvent_from_class_2()
{
p_list[counter].x = pos().x();
}
But the compiler is telling me that it doesn't know p_list. How can I change that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
编译器需要知道
p_list
是在其他地方声明的。将以下内容放入class1.h
或class2.cpp
(在文件范围内)。type
的定义也必须在class2.cpp
中可见。确保定义位于头文件 (class1.h) 中,并且 class2.cpp#include
包含此头文件。The compiler needs to know that
p_list
is declared elsewhere. Put the following inclass1.h
or inclass2.cpp
(at file scope).The definition of
type
must also be visible inclass2.cpp
. Make sure the definition is in a header file (class1.h) and class2.cpp#include
s this header.