对auto_ptr有研究的人进来,希望版主及在线高手关注一下

BlueDog BlueDog 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
以前没仔细看过auto_ptr的代码,今天仔细看了VS2003带的代码,有一个地方不是很了解,希望高手解惑

对于auto_ptr,VS2003实现了->的重载,它的具体代码如下:

_Ty *operator->() const _THROW0()
{ // return pointer to class object
return (&**this);
}


如果看汇编它是
00412033 mov ecx,dword ptr [this]
00412036 call std::auto_ptr<TEST>::operator* (411622h)

也很好理解,但是我不理解的是,为什么它不直接了当地
return _Myptr; // _Myptr 是auto_ptr的私有数据成员
这不是更简单?

各位高手可以发表一下自已的看法
...全文

相关推荐

c++的智能指针Auto_PTR的细致而经典的分析

#### 二、Auto_PTR 简介##### 2.1 动态内存管理问题在 C++ 中,动态内存的分配与释放往往成为开发者需要特别关注的问题。

W4RW4R

The C++ Standard Library(简体中文)

- **auto_ptr的发展动机**:解释了为什么需要`std::auto_ptr`这样的智能指针。

AI人工智能科学

Android开源项目PullToRefresh下拉刷新功能详解2

match_parent" android:layout_height="match_parent" android:numColumns="auto_fit" android:verticalSpacing

weixin_38661087

C++11-14教程.pdf

智能指针方面,C++11新增了std::shared_ptr、std::unique_ptr和std::weak_ptr等智能指针,这些智能指针提供了自动管理对象生命周期的能力,有助于防止内存泄漏和更安全地管理资源

qq_34256696

AI时代C++就业指南:2026年核心技能与高潜力方向

在计算机编程领域,C++以其对内存和计算资源的精细控制能力,成为高性能计算和底层系统开发的核心语言。其原理在于通过直接操作硬件资源,实现极致的运行效率与低延迟,这在需要榨干硬件性能的场景中具有不可替代的技术价值。随着AI、自动驾驶、金融科技等领域的快速发展,对实时推理、高并发服务和资源受限场景的需求日益增长,C++在AI推理框架优化、基础设施构建和嵌入式部署等应用场景中发挥着关键作用。本文聚焦于C++开发者在AI时代的核心价值,系统梳理了现代C++特性、Linux系统编程、高性能网络服务以及AI推理框架集成

weixin_33841503
评论 10
收藏 已收藏
分享
返回顶部
BlueDog
VC/MFC 16,550 成员 421,606 内容