C ++无法将方法中作为指针传递的对象分配给变量

时间:2014-11-24 03:30:48

标签: c++ pointers object i386

我有一个名为MyClass的类声明如下:

#pragma once

class Object_Class;

class MyClass
{
   static Object_Class *object;

public:

    static void setObject_Class(Object_Class *var);
};

object是一个私有静态变量,指向类Object_Class的对象。在实现文件中,我正在尝试这样做:

void MyClass::setObject_Class(Object_Class *var) {
    object = var;
}

但是,我收到了指向此作业的未找到i386架构错误的符号。我做错了什么,我该如何解决这个问题?这是传递对象并将其存储在另一个类变量中的最佳方式,还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

您需要为静态对象声明和初始化存储:

Object_Class *MyClass::object = nullptr;

void MyClass::setObject_Class(Object_Class *var) {
    object = var;
}