- 博客(11)
- 收藏
- 关注
原创 C++:智能指针(5)——enable_shared_from_this工作原理、源码分析
文章目录enable_shared_from_this的作用用法问题1分析问题2分析enable_shared_from_this源码分析、工作原理enable_shared_from_this与shared_ptr的耦合关系总结enable_shared_from_this的作用在C++:智能指针(3)——无法通过原指针增加共享指针shared_ptr的计数,enable_shared_fr...
2020-04-19 03:20:29
2793
原创 C++:模版(1)——:SFINAE和std::enable_if
文章目录SFINAE(substitution failure is not an erro)选择函数的正确编译版本,“忽略”错误的版本SFINAE查看类是否定义了内嵌类型std::enable_if——a compile-time switch for templates参考链接在函数模板的重载决议中应用此规则:当将模板形参替换为显式指定的类型或推导的类型失败时,从重载集中丢弃这个特化,而非...
2020-04-18 19:30:14
595
原创 C++:继承(4)——虚函数实现原理:虚函数表
文章目录虚函数表单继承多重继承虚函数、纯虚函数的差别参考链接继承部分的总结C++通过继承(inheritance)和虚函数(virtual function)来实现多态性。所谓多态,简单地说就是,将基类的指针或引用绑定到子类的实例,然后通过基类的指针或引用调用实际子类的成员函数(虚函数)\color{red}所谓多态,简单地说就是,将基类的指针或引用绑定到子类的实例,然后通过基类的指针或引用调...
2020-04-18 03:04:00
310
原创 C++:继承(3)——多态:静态联编(重载、泛型)、动态联编(虚函数)
文章目录静态联编与动态联编静态联编的多态——根据指针类型确定执行方法静态联编的多态——泛型编程 模版动态联编的多态——虚函数参考链接多态(Polymorphism)按字面的意思就是“多种状态”。 在面向对象语言中,接口的多种不同的实现方式即为多态。 引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根...
2020-04-17 23:52:05
625
原创 C++:继承(2)——public继承的赋值兼容规则(基类指针指向子类对象)
文章目录public继承派生类与基类的关系public继承 是一个接口继承,保持is-a原则,每个父类可用的成员对子类也可用,因为每个子类对象也都是一个父类对象。protetced继承 / private继承 是一个实现继承,基类的部分成员并非完全成为子类接口的一部分,是 has-a 的关系原则。https://blog.csdn.net/lixungogogo/article/detai...
2020-04-17 18:40:09
318
原创 C++:继承(1)——public、protected、private继承
文章目录类的public、protected、private继承public继承:基类public、protected、private的访问权限参考链接类的public、protected、private继承/public继承protected继承private继承基类public成员publicprotected不可见 ❌基类protected成员pr...
2020-04-17 15:45:33
2623
原创 C++:智能指针(3)——无法通过原指针增加共享指针shared_ptr的计数,enable_shared_from_this解决
C++:无法通过原指针增加共享指针shared_ptr的计数 enable_shared_from_this——(3)用原指针定义两个shared_ptr造成重复释放内存问题的严重性enable_shared_from_this一个非常隐蔽的问题:enable_shared_from_this的初始化用原指针定义两个shared_ptr造成重复释放内存注意到shared_ptr的重复计数引用不...
2020-04-17 02:14:55
537
1
原创 C++:智能指针(2)——shared_ptr引用计数功能,weak_ptr解决循环引用
上一篇文章 C++:智能指针auto_ptr, unique_ptr, shared_ptr, weak_ptr ——(1)已经介绍了auto_ptr与unique_ptr;如果有疑惑的同学可以查看;shared_ptrshared_ptr是原始指针的封装类。它是一个附加了引用计数所有权模型,即它与shared_ptr的所有副本协作维护其包含的指针的引用计数。因此,每当一个新的指针指向资源时,...
2020-04-16 18:46:35
3085
原创 C++:智能指针(1)——auto_ptr, unique_ptr的区别
正在上传…重新上传取消auto_ptr, unique_ptr首先看一段代码#include <iostream>#include <type_traits>#include <vector>#include <memory>#include <exception>using namespace std;int...
2020-04-16 14:19:55
2923
原创 C++:单参数构造函数的隐式转换
C++:单参数构造函数的隐式转换20200416举个例子push_back()的右值引用参考内容20200416在做智能指针测试的时候调用了vector数组vector< auto_ptr<int> > a_v; //USAGE ERROR//a_v.push_back(new int(999)); //ERROR /*这里push_back执行报...
2020-04-16 02:27:40
1016
原创 mac下基于python3(或2)配置opencv
最近看ng的卷积神经网络,python大作业里用到了cv2这个包,我算踩了不少雷,分享一下:1. pip默认2.7版本安装,我懒得搞语法了,直接从https://pypi.org/project/opencv-python/#files下载了whl文件。对应自己的anaconda版本,我的是3.6.2. pip install XXXX.whl3. 从对应的opencv安装目录下找到 .so文件,...
2018-04-19 16:40:11
354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人