c++ - 类和类中的指针

标签 c++ function class pointers header

所以代码的格式是这样的:

class patient{
public:
    char FirstName[30];
    char LastName[30];
    char SID[20];

};

class Register{
    private:
    int PatientNum;
    patient List[];

    public:
    void OutputList ();

};

然后我像这样使用 Register 得到了函数:

void Register::OuputList() {...}

现在,这一切都在一个头文件中。但是,当我尝试在 main 中实现函数 OutputList() 时,它不允许我这样做。我该怎么做才能让主要的函数通过编译?

此外,我还有另一个函数是在患者类的范围之外定义的,例如:

patient Add(){...}

以Add()形式使用该函数时;总的来说,它有效。

=========编辑=================================== =============================

我修复了编译的问题,在main中定义了一个Register指针对象:

Register *q;

但是,我现在的问题是该函数不显示从添加函数获取的数据。我为 register::OutputList() 编辑的主要代码是:

q -> OutputList();

这会编译,但是它不会显示来自添加的任何内容(它应该如此)。我在想它指向程序中没有分配的内存吗?知道如何解决吗?

最佳答案

您必须先创建一个 Register 对象,然后才能调用它的任何函数。如果您需要指针,则必须对其进行初始化,使其指向对象。一种方法是...

Register* q = new Register();

关于c++ - 类和类中的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19747138/

相关文章:

c++ - 使用 find 方法查找对象的属性 == 某个值

c++ - boost::二进制<>

c++ - : ascii or binary? 哪种格式的STL文件读取速度更快

javascript - 如何在 Javascript 中的嵌套函数中传递参数

c - 事先声明的功能

php - 如何在静态方法中调用类的成员变量?

c++ - 使用 OpenGL 在 SFML 中获取正确的鼠标位置

c++ - "uFlags &= ~CHN_PANNING"命令有什么作用?

javascript - 如何调用 TinyMCE 插件函数?

python - 自定义 sklearn 变压器类中矩阵 (X) 的维数(行)减少