访问另一个类中的全局指针

时间:2011-08-29 13:20:52

标签: c++ pointers global

我已经在一个类中全局定义了一个列表作为指针:

class1.cpp

type list[1000];
type *p_list = list;

现在我想使用这个列表并将一些值放入其中。这应该发生在另一个类中,方法

class2.cpp

mousePressEvent_from_class_2()
{
    p_list[counter].x = pos().x(); 
}

但编译器告诉我它不知道p_list。我怎么能改变它?

1 个答案:

答案 0 :(得分:6)

编译器需要知道p_list在其他地方声明。将以下内容放在class1.hclass2.cpp中(在文件范围内)。

extern type *p_list;

type的定义也必须在class2.cpp中可见。确保定义位于头文件(class1.h)和class2.cpp #include这个标题中。