gpt4 book ai didi

C++ 类定义分成两个标题?

转载 作者:行者123 更新时间:2023-11-30 02:45:30 24 4
gpt4 key购买 nike

在 C++ 中是否可以将类成员的定义拆分为两个头文件?什么是合适的编码方式?

例如:

a1.h

class A {
public:
int var;
void foo1(int b);
}

a1.cpp

#include "a1.h"

void A::foo1(int b) {
cout << b;
}

a2.h

[extend] class A {
public:
void foo2(double c);
}

a2.cpp

#include "a2.h"

void A::foo2(double c) {
cout << c;
}

最佳答案

你不能以这种方式扩展,但你可以使用pimpl模式:

class A {
public:
void foo1(int b);
private:
AImpl* pimpl;

}

然后有 AImpl.hAImpl.cpp 来隐藏所有私有(private)细节。

关于C++ 类定义分成两个标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24388051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com