pimpl-idiom

pimpl-idiom

文章 0 浏览 6

pimpl 与匿名命名空间兼容吗?

我正在尝试使用 pimpl 模式并在匿名命名空间中定义实现类。这在 C++ 中可能吗?我的失败尝试如下所述。 是否可以在不将实现移动到具有名称(或全局名…

空心空情空意 2024-11-02 20:53:22 11 0

请求 Pimpl 框架意见/建议

我基本上已经实施了一个提案,我的问题是,它已经完成了吗?如果完成了,在哪里?和/或有更好的方法来做我正在做的事情吗?抱歉这篇文章的长度,除了…

剧终人散尽 2024-11-02 02:04:01 7 0

pimpl:避免使用 pimpl 指向指针

在这个问题中,我问“pimpl:shared_ptr或unique_ptr”我一直在确信 pimpl 习惯用法的正确用法是使用 unique_ptr,而不是 shared_ptr。它应该对用户来…

北恋 2024-10-30 19:03:05 8 0

如何从类定义中省略私有非虚拟方法?

假设我有如下内容: a.hpp: class B; class A { private: std::unique_ptr b_; } a.cpp: #include struct B { something_complicated x; } something_…

貪欢 2024-10-30 17:29:47 12 0

c++ pimpl idiom :根据模板参数实现

在 这个问题中,我没有成功地询问如何使用不同的 pimpl 实现,具体取决于模板参数。 也许这个例子更好地说明了我正在尝试做的事情: #include templat…

回忆追雨的时光 2024-10-26 04:53:08 9 0

pimpl 习语结构内存泄漏

我们在课堂上使用 pimpl 习语。 pimpl 结构在包含 pimpl 指针的类中声明,如下所示: struct MyClassImpl; friend struct MyClassImpl; boost::scoped…

伴梦长久 2024-10-24 05:03:49 8 0

使用 d 指针有哪些优点和缺点?

d 指针在 Qt 中被大量使用,它们是 pimpl idiom 的实现。我知道 pimpl 习语的优点和缺点。但我错过了 d 指针实现的优点。 此处 和 这里是 d 指针的示…

追我者格杀勿论 2024-10-17 07:44:01 9 0

在带有模板构造函数的类中使用智能指针的 Pimpl:奇怪的不完整类型问题

当将智能指针与 pImpl 习惯用法一起使用时, struct Foo { private: struct Impl; boost::scoped_ptr pImpl; }; 明显的问题是 Foo::Impl 在生成 Foo …

只有一腔孤勇 2024-10-16 05:46:25 11 0

不使用动态内存分配的 Pimpl 习惯用法

我们想在项目的某些部分使用 pimpl idiom。项目的这些部分也恰好是禁止动态内存分配的部分,并且这个决定不在我们的控制范围内。 所以我要问的是,是…

故事灯 2024-10-16 03:29:03 9 0

C++:创建模板化共享对象而不是一个shared_ptr目的

根据我之前的问题,我希望 boost::shared_ptr 实际上是 A 的子类(或者可能是 A*),这样它可以在以 A* 作为参数的方法中使用。 考虑下面的类: class…

喜爱纠缠 2024-10-06 21:55:37 12 0

C++:创建共享对象而不是指向对象的共享指针

boost::shared_ptr 真的很困扰我。当然,我理解这样的东西的实用性,但我希望我可以使用 shared_ptr 作为 A*。考虑以下代码 class A { public: A() {}…

江挽川 2024-10-06 17:22:16 9 0

C++:自动减少编译时依赖的工具

阅读有关 pimpl 习语后,我感到震惊! 是否没有一个工具可以检查 .h/.cpp 文件并推断出可以放弃哪些依赖项?…

桃扇骨 2024-10-04 13:39:50 7 0

粉刺不工作

这是一个非常菜鸟的错误,但我不知道这里发生了什么。 有很多 pimpl 示例,但我不明白为什么这不起作用(这或多或少是示例之一,但我没有看到区别)。…

天气好吗我好吗 2024-09-28 17:32:10 8 0

pimpl 惯用法如何减少依赖性?

请考虑以下内容: PImpl.hpp class Impl; class PImpl { Impl* pimpl; PImpl() : pimpl(new Impl) { } ~PImpl() { delete pimpl; } void DoSomething(…

旧故 2024-09-16 04:39:33 11 0

PIMPL 和堆栈分配

所以我一直在思考 PIMPL 和堆栈分配。我一直在编写一个库,并决定使用 PIMPL 来隐藏类的私有成员。这意味着我将有一个这样声明的类, class Foo { pri…

北恋 2024-09-10 00:56:35 18 0
更多

推荐作者

忆悲凉

文章 0 评论 0

hgfg1645

文章 0 评论 0

qq_qLPLYi

文章 0 评论 0

戏舞

文章 0 评论 0

殊姿

文章 0 评论 0

﹂绝世的画

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文