C ++在另一个类头文件中声明一个类

尤瓦尔·大卫(Yuval David)
#ifndef PC
#define PC
#include <iostream>
#include <string>
#include "../include/worm.h"
#include "../include/dns.h"

class DNS; // Forward decleration

class PC
{
....(there is all the declration here)  
};

#endif

为什么会有“类DNS”?编写代码的目的是什么?(如果您需要更多代码来理解需求\目的,请告诉我)

DeepDeadpool

我们需要更多代码,特别是DNS的头文件,但我假设dns.h也包含pc.h。当您有两个彼此包含的头文件时,它们必须各自向前声明另一个类。

但是,如果dns.h不包含pc.h,则不需要前向声明。

我对它的理解涉及循环依赖。想象一下我正在浏览dns.h,然后看到pc.h。我需要知道您所依赖的内容,因此现在开​​始学习pc.h。我现在看到dns.h,但是我就在那里,所以我继续浏览pc.h。如果您在PC课堂上使用DNS,我怎么知道什么是DNS?在点击该类声明之前,我停止浏览dns.h。

解决方案是预先在pc.h中声明该类。这给了我足够的信息来知道DNS是某种类,并且当我看到DNS类型的参数,变量等时也不会感到惊讶。我现在有信心DNS将在以后定义。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在C ++中使用另一个头文件中的抽象类

目标 C:如何访问 AppDelegate 中另一个类中声明的类?

C++ - 在另一个头文件中包含一个头文件以使全局变量可用于数组声明

从另一个 C++ 文件访问类

如何在另一个头文件中包含c头文件?

如何创建一个类,该类是C ++中另一个类的向量?

在另一个类 C++ 中包含一个类对象

无法从Visual Studio C ++中的另一个类访问一个类

Objective-C:在另一个类中调用一个类的属性

C#与另一个类中的一个类的变量进行交互

如何调用在另一个类中声明的方法(C ++)

C#中另一个类的对象

将一个类的对象声明为另一个类的成员 (C++)

如何在 C++ 中将另一个类引用到另一个类中?

从另一个类访问 C# 类

C ++从另一个类访问类成员

如何独立于 C++ 中声明的位置在另一个类函数中使用类?

在 C++ 中的另一个 .h 文件中使用类中的方法

如何从 C# 中的另一个方法引用一个类?

C ++从文件阅读器中的另一个类调用集合函数

C ++中另一个类及其父类的共享类

文件夹中的C#类,需要调用另一个文件夹中的类

C#/ WPF从另一个类中创建的另一个线程更新UI

在另一个类中保存一个类的实例objective-c

C ++-从另一个类构造函数调用一个类构造函数

将一个类用作另一个类的参数。(C ++)

如何将一个类访问另一个C#类

使用另一个类C ++构造一个类

c#如何从另一个类调用一个类