gpt4 book ai didi

C++ 创建一个头文件来解决循环依赖是个好主意吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:16 24 4
gpt4 key购买 nike

我有一个开始变大的 C++ 项目。我面临的情况是我有很多具有循环依赖性的类。假设我有 A、B、C、D 类。为了解决这个问题,我创建了一个名为 circular_dep.h

的头文件

此文件的内容将是指向类的指针:

class A;
class B;
class C;
class D;

这个 header 现在包含在我所有类(class)的 header 中。这样,当我有循环依赖时,编译器就会停止提示。但是,每当我向项目添加新类时,我都必须将它添加到 circular_dep.h

我找不到任何更简单的方法来做到这一点,所以对我来说这是迄今为止最好的解决方案。我的问题是:应用于可能面临循环依赖问题的项目是个好主意吗?或者这是一个糟糕的设计/糟糕或危险的做法?

最佳答案

你拥有的很好。我经常看到的命名后缀是 _fwd.h/_fwd.hpp/_fwd.hxx.h 的任何变体 你喜欢。你可以在 Boost 中看到这个,例如:optional_fwd.hpp .

(当然减少循环依赖是一个很好的目标,但有些东西本质上是相互递归的,比如语法,所以你别无选择。)

关于C++ 创建一个头文件来解决循环依赖是个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36464173/

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