随笔分类 -  C++

摘要:参考 https://en.cppreference.com/w/cpp/named_req/PODType 定义 知识的搬运工,以下内容抄的,虽然是硬性定义,但是希望大家要深刻理解与体会。 POD类型具体要求满足如下条件: 标量类型 满足下列要求的类类型: 为平凡类型, 即要求满足如下条件: 可平 阅读全文
posted @ 2021-06-06 00:23 殷大侠 阅读(448) 评论(0) 推荐(0) 编辑
摘要:三者的关系 我的理解是这样的: 因为【引用折叠】特性,才有了万能引用。 【完美转发】的特性是借助【万能引用】以及【forward模板函数】来实现。 引用折叠 在 前面文章 介绍过,什么是引用折叠。总结下来就是C++中的两条规则: 规则一: 当我们将一个左值传给模板函数的右值引用参数(T&&)时, 编 阅读全文
posted @ 2021-06-05 20:26 殷大侠 阅读(2814) 评论(0) 推荐(1) 编辑
摘要:忍不住了,不得不吐槽一下,妈的,太复杂了,真难,搞得太复杂了,看不懂,看不懂,真的越来越复杂了,没有必要啊! 看得了头皮发麻,搞不明白,咱又不是干编译器的,投降了。 工程代码中,代码风格要保持简洁,可读性好,可维护性好,没事千万别整一些奇奇怪怪的初始化秀技术,别过度依赖语言特性与编译器特性,最简单就 阅读全文
posted @ 2021-06-02 00:12 殷大侠 阅读(792) 评论(0) 推荐(0) 编辑
摘要:好文, 与当年我看《深度探索c++对象模型》时的困惑一样,当时看的也是云里雾里。 https://blog.csdn.net/shichao1470/article/details/91563282 有一点要说明一下, 现在最新的g编译器,dump出c类对象内存布局的编译选项,应该变为: -fdum 阅读全文
posted @ 2021-05-28 23:29 殷大侠 阅读(811) 评论(0) 推荐(0) 编辑
摘要:让自己习惯c++ 尽可能的使用const 当const修饰类成员函数时,如果两个函数只有常量性不同, 可以被重载。(本质上,const其实修饰的是this指针, 所以呢, 本质上还是参数的类型不同导致的重载) 如果要修改一个const的类对象内的成员变量, 需要把变量使用mutable修饰成员变量。 阅读全文
posted @ 2021-05-15 22:55 殷大侠 阅读(194) 评论(0) 推荐(2) 编辑
摘要:const变量的文件作用域 以前从来没有注意到的一个知识点: const 修饰的对象默认只有当前文件中有效。这就表明了: 在不同的.cpp文件内可以定义相同名称的const 对象。 如果要使const 我修饰的变量具有全局使用域,在定义该变量时,需要加上extern 关键字。 原因: 在未声明为 e 阅读全文
posted @ 2021-05-04 17:00 殷大侠 阅读(355) 评论(0) 推荐(1) 编辑
摘要:函数模板 定义 例子一 template<typename T> void Func() { cout << "hello, world" << endl; } 例子二 template <typename T, template<typename,typename> class A, size_t 阅读全文
posted @ 2021-05-04 16:42 殷大侠 阅读(839) 评论(1) 推荐(2) 编辑
摘要:笑谈c++智能指针 c的一切都是类或模板类, 万变不离其宗. 智能指针也是类,模板类. 不同的智能指针,就对应了不同的类实现了, 但是它们都利用了类对象有释放的时候会调用析构函数的原理. C有以下几种智能指针: auto_ptr : c++11之后就弃用了. unique_ptr : 它代替了aut 阅读全文
posted @ 2020-09-05 22:22 殷大侠 阅读(333) 评论(0) 推荐(0) 编辑
摘要:C++中重载运算符 注意事项: 重载运算符函数要求必须有一个参数为类对象. 重载运算符函数不可以有默认参实参.(operator() 除外) 重载运算符函数的参数个数与运算符作用的运算对象数量相同, 对于二元运算符来说,左侧运算符对象传递给第一个参数,右侧运算符对象传递给第二个参数. 重载之后的运算 阅读全文
posted @ 2020-09-05 22:20 殷大侠 阅读(894) 评论(0) 推荐(0) 编辑
摘要:从c++11开始,可以使用lambda表达式,介绍一下使用方法以及事项, 你可以把它当作一个无名重载了operator()运算符的类对象。 [TOC] 知识背景 尾置返回类型 C++11标准中,引入定义函数时的一种新的方法,使用 尾置返回类型 .这种形式对于返回类型比较复杂的情况很有效。 通常情况下 阅读全文
posted @ 2020-05-23 19:12 殷大侠 阅读(1406) 评论(0) 推荐(1) 编辑
摘要:[TOC] 定制new和delete 第49条:了解new_handler的行为 什么是new_handler? 1. new_handler是一个函数指针类型,定义在头文件中,它为函数std::set_new_handler()与std::get_new_handler()所使用. 原型定义如下所 阅读全文
posted @ 2020-05-16 14:06 殷大侠 阅读(799) 评论(0) 推荐(0) 编辑
摘要:一 提两个简单问题: 下面代码在64位系统下运行,short 类型占两个字节,int类型占4个字节,long类型占8个字节, 猜猜问题1与问题2的结果: 问题1:以下两个代码的输出结果相同吗 代码一: 代码二: 问题2:以下的代码输出结果又是否相同? 代码三: 代码四: 二 猜对答案了没? 1. 问 阅读全文
posted @ 2020-05-02 09:39 殷大侠 阅读(6318) 评论(1) 推荐(1) 编辑
摘要:引言: 在c++中司空见惯的事情就是:可以通过指针和引用可以实现多态,而对象不可以。 那为什么?让我们来解开这神秘的暗纱! 1、 类对象的存储方式: 在一个类的实例中,只会存放非静态的成员变量。 如果该类中存在虚函数的话,再多加一个指向虚函数列表指针—vptr。 例如声明如下两个类,并分别实例化两个 阅读全文
posted @ 2019-03-13 19:25 殷大侠 阅读(7128) 评论(0) 推荐(4) 编辑
摘要:std中定义了很好几种顺序容器,它们自身也提供了一些操作,但是还有很多算法,容器本身没有提供。 而在algorithm头文件中,提供了许多算法,适用了大多数顺序容器。与c++11相比,很多函数在 c++17与c++20又改变了很多,下面内容基于c++11去简单介绍. 参考文献: https://en 阅读全文
posted @ 2018-11-08 18:44 殷大侠 阅读(2806) 评论(0) 推荐(0) 编辑
摘要:从c++11标准以来,c++中std定义的几种容器的效率非常高,优化的非常好,完全没有必要自己去定义类似的数据结构。了解使用它们,可以满足90%的日常编程需要。该篇文章基于c++11标准,从用户角度来介绍常用的顺序容器与并联容器(如果想从内部了解它们是怎么实现的,推荐看看《std源码剖析》这本书)。 阅读全文
posted @ 2018-11-05 20:34 殷大侠 阅读(22542) 评论(1) 推荐(0) 编辑
摘要:本篇文章仅仅从很表层来介绍一个C++语言中的类,包括什么是类,类的封装性/继承性和多态性。高手直接跳过吧,看了浪费时间,新手或者想温习一下的可以浏览看看。 1. 什么是类? 到底什么是类(class)??类就是一种类型,是用户自己定义的一个类型,和内置类型如int/float/double类似, 用 阅读全文
posted @ 2018-10-30 11:28 殷大侠 阅读(1989) 评论(0) 推荐(0) 编辑
摘要:可以看看这里:http://blog.csdn.net/misskissc/article/details/9859753 我的总结: 1,用thread类来创建一个线程,它的构结函数 : (1)thread(); (2)template<class F> explicit thread(F f); 阅读全文
posted @ 2016-10-21 20:32 殷大侠 阅读(627) 评论(0) 推荐(0) 编辑
摘要:以上内容来自:http://wenku.baidu.com/link?url=haeRBhswlEcqddk48uW8YVMsdFNWsllimn_dzUYchb6G9NdT4pqgluCpnLQIdWkLSAtG5MFlt8DAkO1Vf12YVyw85A2AaBR9OPbdv6ddgju 感觉写 阅读全文
posted @ 2016-10-20 12:13 殷大侠 阅读(327) 评论(0) 推荐(0) 编辑
摘要:这个吧,我也不怎么知道,所以,大家来看这两篇文章哦: http://blog.csdn.net/hackbuteer1/article/details/7558868 http://blog.csdn.net/xwpc702/article/details/8670025 总结一下: 阅读全文
posted @ 2016-10-20 09:42 殷大侠 阅读(213) 评论(0) 推荐(0) 编辑
摘要:进行本地线程管理的 thread_specific_ptr 指针: 可以看这里:http://www.kingofcoders.com/viewNews.php?type=newsCpp&id=187&number=6571825070 我也没有怎么好好看明白呢,就了解了一下,因为用不到啊。。 如果 阅读全文
posted @ 2016-10-19 10:03 殷大侠 阅读(380) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示