CppCon 2021: Persistent Data StructuresTable pairs CHM copyIdx copyDone size slots newTable K1 V1 K2 V2 K3 V3 K4 V4 K5 V5 K6 V6 K7 V7 K8 V8 K1 V1 K2 V2 1.dat 2.dat 3.dat Table pairs CHM copyIdx copyDone size slots newTable A Persistent Table pairs CHM copyIdx copyDone size slots newTable K1 V1 K2 V2 K3 V3 K4 V4 K5 V5 K6 V6 K7 V7 K8 V8 K1 V1 K2 V2 1.dat 2.dat 3.dat Table pairs CHM copyIdx copyDone size slots newTable A Persistent Table pairs CHM copyIdx copyDone size slots newTable K1 V1 K2 V2 K3 V3 K4 V4 K5 V5 K6 V6 K7 V7 K8 V8 K1 V1 K2 V2 1.dat 2.dat 3.dat Table pairs CHM copyIdx copyDone size slots newTable A Persistent0 码力 | 56 页 | 1.90 MB | 6 月前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理std::dynamic_pointer_cast 8. 运算符重载 9. 右值引用 && 10. std::shared_ptr和 std::any • 只提供了关键字,详细信息请善用搜索引擎: bing.com 。(不要用 baidu.com ,那个是搜广告用的) • 如果感兴趣,我可以增添一节专门讲动态多态。 回家作业! • 已经发布到: https://github.com/parallel101/hw02 的拷贝构造函数能正常工作,且内存能够安全释放。 • 通过 pull request 提交你的作业,这样我可以通过 diff 页面清楚地看到你的改动。 • 什么事 pull request ?还是善用搜索引擎,这是作业的一部分( x 感谢观看! by 彭于斌( github@archibate ) 录播: https://space.bilibili.com/ 263032155 课件: https://github 0 码力 | 96 页 | 16.28 MB | 1 年前3
《深入浅出MFC》2/e面那么做就行。 为了支持这种能力,C++ 提供了所谓的虚拟函数(virtual function)。 虚拟+ 函数?! 听起来很恐怖的样子。如果你了解汽车的离合器踩下去代表汽车空档, 空档表示失去引擎本身的牵制力,你就会了解「高速行驶间煞车绝不能踩离合器」的道 理并矢志遵行。好,如果你真的了解为什么需要虚拟函数以及什么情况下需要它,你就 能够掌握它的灵魂与内涵,真正了解它的设计原理,并且发现认为它非常人性。并且, AfxWndProc(0, WM_CREATE, 0, 0, pMyFrame); AfxWndProc(0, WM_COMMAND, 0, 0, pMyView); 不管这个规则是怎么定下来的,现在我要设计一个推动引擎,把它仿真出来。以下这些 函数名称以及函数内容,完全仿真MFC 内部。有些函数似乎赘余,那是因为我删掉了 许多主题以外的动作。不把看似赘余的函数拿掉或合并,是为了留下MFC 的足迹。此 外,为了追踪调用过程(call 外,为了追踪调用过程(call stack),我在各函数的第一行输出一串识别文字。 首先我把新增加的一些成员函数做个列表: 类别 与消息绕行有关的成员函数 全域函数AfxWndProc 就是我所谓的推动引擎的起始点。它本来应该是在 CWinThread::Run 中被调用,但为了实验目的,我在main 中调用它,每调用一次便推 送一个消息。这个函数在MFC 中有四个参数,为了方便,我加上第五个,用以表示是0 码力 | 1009 页 | 11.08 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - Zeno 中的现代 C++ 最佳实践 声明为模板函数的确能解决问题,但模板函数不是面向对象的思路,并 且如果 cat 和 dog 是在一个 IObject 的指针里就会编译出错,例如右图的 vector(这是游戏引擎中很常见的用法)。 正确解法:额外定义一个 clone 作为纯虚函数,然后让猫和狗分别实现他 clone 的调用 • 这样一来,我们通用的 eatTwice 函数里 只需调用 obj->clone() 0 码力 | 54 页 | 3.94 MB | 1 年前3
Conan 2.0 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 652 页 | 4.00 MB | 1 年前3
Conan 2.1 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 694 页 | 4.13 MB | 1 年前3
Conan 2.3 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 748 页 | 4.65 MB | 1 年前3
Conan 2.5 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 769 页 | 4.70 MB | 1 年前3
Conan 2.2 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 718 页 | 4.46 MB | 1 年前3
Conan 2.4 Documentationself.settings.os == "Macos" and self.settings.arch == "armv8": raise ConanInvalidConfiguration("ARM v8 not supported in Macos") Conditional requirements using a conanfile.py You could add some logic to0 码力 | 769 页 | 4.69 MB | 1 年前3
共 15 条
- 1
- 2













