【C++】只用指针而无需定义完整类型
C++中只用指针而无需完整类型定义教程
在 C++ 里,如果你只用指针来引用一个类型,而不直接使用这个类型的成员或实例,是可以不需要完整定义该类型的,这叫做前向声明(forward declaration)。
1. 例子:
#include <iostream>
// 前向声明(不需要包含完整头文件)
class Foo;
void func(Foo* p) // 只用到指针,不需要 Foo 的定义
{
std::cout << p << std::endl;
}
int main() {
Foo* ptr = nullptr; // OK
func(ptr);
return 0;
}