gpt4 book ai didi

C++/面向对象 : Class with implicit dependency on other class

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

我正在用 OpenGL 编写程序。有一个 Gfx 类,它包含一个 OpenGL 上下文并包装了 OpenGL 库。还有一个 Texture 类,它包装了 OpenGL 纹理名称(包括生成和删除)。 Texture 类自然地隐式依赖于 Gfx 类。但我想要 RAII,没有指针,因此认为 Texture 类必须是可公开访问的。

表达对构造的 Gfx 实例的依赖的最简洁的方法是什么?

最佳答案

假设没有上下文就不能存在纹理,看起来构造函数参数在这种情况下是正确的,可能是 std::shared_ptr<Gfx> (希望这可以从你的无指针政策中得到原谅——我认为它是一个 C++ 构造)。这样,只要至少一个纹理未被处理,Gfx 就会一直存在。

关于C++/面向对象 : Class with implicit dependency on other class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18340916/

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