一种抽象数据类型,它在提供附加功能时模拟指针,例如自动垃圾收集或边界检查
在这种情况下,`shared_ptr` 和 `weak_ptr` 如何避免泄漏?
通常,当强引用计数和弱引用计数都为零时,智能指针(强指针或弱指针)将释放控制块。 我无法弄清楚这是如何在下面实现的...
我有一个带有虚拟 equals() 函数的 Person 基类,用于检查新的 Person 对象是否重复。 Person 有两个派生类,Student 和 Instructor。还有一个家庭班...
我有一个包含共享指针的classX std::shared_ptr sharedPTR; 我希望存储在共享指针中的指针对齐,所以在我拥有的每个构造函数中我都初始化共享...
我最近一直在处理以下场景: pub fn random_function(inp_array: &[u32]) { 对于 (RefCell::new(*inp_array)).iter_mut() { // 改变 actual_val t...
结构基础 { 虚拟基础* getObject() { 归还这个; } }; 派生的结构:基础 { Derived* getObject() 覆盖 { 归还这个; } }; 什么是智能指针
一道C++入门练习题: 确保释放资源的一种简单方法是使用智能指针。 假设我们正在使用 C 和 C++ 都使用的网络库。使用 ...
我有一个简单的Node树MultNode类。 它是 Node.js 的子类。 _pRight 和 _pLeft 是 std::shared_ptr 对象。类节点是一个抽象类。 DerFun 执行乘法的微分函数...
我想更好地理解shared_ptr 这是我的代码 结构 A { int val_ = 0; A(int val) : val_(val) { std::cout << "A(" << val_ << ")" << std::end...
How to handle heap allocated fixed length byte buffers?
在 C 语言中,我们使用 char* 指向使用 malloc 分配的内存块,并在单独的大小/长度变量中跟踪大小。 什么是 C++ 等价物?据我目前所见,大多数人...
在我们的应用程序中,我们即将(最终..)从原始指针切换到使用 C++11 smart_ptr 模板。 我们的应用程序中确实偶尔会出现错误,(非 C++)对象仍然保留对我们的 C++ 的引用
这次重新询问了一些源代码。 我有一个看似随机更改指针内存地址的代码库。所有的指针。类包含的示例伪代码片段...
这里的代码: 模板 结构对 { 第一把钥匙; 第二个值; }; 模板 使用 slot= std::unique_ptr...
我对 Rust 不熟悉。 我尝试编写的程序将在运行时确定 n 的值。 我希望程序具有以下行为:将创建 n 个线程,每个线程...
我没想到这段代码可以编译: #包括 #包括 A类 { 民众: 内联 int get() const { 返回 m_i; } 内联无效集(缺点...
无法使 std::unique_ptr<std::istream> 持有指向 std::ifstream 的指针
考虑以下代码(为简单起见脱离上下文): std::unique_ptr 流; stream = std::make_unique(path, std::ios::in | std...
在我的主程序中,我有一个标准的 > 但我还想创建一个次要的 std::set >因为我不想...。
让我们看看这段代码:模板 结构A { /... }; 结构B : 公共A { /... }; 模板 bool validate(A) * p) { /... return ...
不能用'std::shared_ptr_access''类型的表达式初始化'TreeNode'类型的参数。
我试图创建一个链接列表,存储一个指向二叉树的指针,二叉树类是我从一个通用的TreeNode类派生出来的子类。TreeNode类有它的AddNode ...
所以我正在为一个OOP课程编写一个项目。我遇到了这个奇特的情况。我有一个类,它有一个可定制的函数,就像这样。#include #include #include
我应该使用C++11的emplace_back与指针containters吗?
有一个通常的Base -> 衍生的层次结构,比如:class Fruit { .... }; class Pear : Fruit { .... }; class Tomato : 水果类 { ... }; std::vector m_fruits; 是否有意义(例如:它有更好的 ...