原文:C++: Strict Weak Ordering

想讲讲C STL中各种算法都用到的一个概念,Strict Weak Ordering。 举个例子,来说明为什么写C 要知道这个东西。 假如你定义了一个类型MyType,而且这个类型是可比的 comparable,定义了 lt 这个operator : 现在一个vector里装着很多这种类型的对象,你想对这个 vector 排序: 之所以能用std::sort 来对任意类型排序,而不用给std::s ...

2016-06-05 18:20 1 3716 推荐指数:

查看详情

C/C++ strict-aliasing

最近发现了一个奇怪的编译参数-fno-strict-aliasing,好奇之下做了一点研究; 重点参考Understanding C/C++ Strict Aliasing; 所谓的aliasing就是多个变量指向同一块内存,变量之间互为别名; strict-aliasing是一种 ...

Wed May 30 00:35:00 CST 2018 2 1440
c/c++ 智能指针 weak_ptr 使用

智能指针 weak_ptr 使用 weak_ptr用途: 1,解决空悬指针问题 2,解决循环引用问题 weak_ptr特点:没有*操作和->操作 weak_ptr是不控制所指对象生存周期的智能指针,它指向由一个shared_ptr管理的对象。将一个weak_ptr绑定到一个 ...

Sat Sep 29 16:06:00 CST 2018 0 1287
c/c++中的__attribute__((weak))使用

main.cpp g_test.h g_test.cpp 输出结果是调用到g_test.cpp中的testFunc函数中 如果g_test.cpp中没有实现,则调用的__attribute__((weak))的函数 ...

Wed Sep 02 23:26:00 CST 2020 0 755
C++ 11 创建和使用共享 weak_ptr

1、为什么需要weak_ptr? 在正式介绍weak_ptr之前,我们先来回忆一下shared_ptr的一些知识。我们知道shared_ptr是采用引用计数的智能指针,多个shared_ptr实例可以指向同一个动态对象,并维护了一个共享的引用计数器。对于引用计数法实现的计数,总是避免 ...

Thu Jun 30 05:30:00 CST 2016 1 4941
C++智能指针 weak_ptr

C++智能指针 weak_ptr   weak_ptr 是一种不控制对象生命周期的智能指针, 它指向一个 shared_ptr 管理的对象. 进行该对象的内存管理的是那个强引用的 shared_ptr. weak_ptr只是提供了对管理对象的一个访问手段.   weak_ptr 设计的目的 ...

Tue Oct 04 21:11:00 CST 2016 0 18873
c++——智能指针学习(shared_ptr和weak_ptr)

先看一个例子:Stark和Targaryen家族你中有我,我中有你。我们设计以下类企图避免内存泄漏,使得析构函数都能调用到: #include<iostream> #includ ...

Sat Mar 30 00:32:00 CST 2019 0 1888
C++:智能指针-TR1的shared_ptr和weak_ptr使用介绍

(所有示例的运行,将#序号所在main()函数去掉序号即可,参考[url]http://www.codeguru.com/cpp/cpp/cpp_mfc/stl/article.php/c15361/[/url])#1 #2get() 返回对象指针use_count() 返回对象的引用 ...

Fri Apr 27 17:46:00 CST 2012 0 4622
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM