C++学习
文章平均质量分 83
畅蜀黍
这个作者很懒,什么都没留下…
展开
-
拷贝控制成员
C++ Primer学习笔记拷贝控制成员拷贝、赋值和销毁术语拷贝控制成员拷贝、赋值和销毁拷贝初始化不仅在用=定义变量时会发生,将一个对象作为实参传递给一个非引用类型的形参、从一个返回类型为非引用类型的函数返回一个对象、用花括号列表初始化一个数组中的元素或一个聚合类中的成员也会执行拷贝初始化。在一个析构函数中,首先执行函数体,然后销毁成员。成员按初始化顺序的逆序销毁。内置类型没有析构函数,因此销毁内置类型成员什么也不需要做。无论何时一个对象被销毁,就会自动调用其析构函数:变量在离开作用域时被销毁原创 2021-08-14 11:49:48 · 165 阅读 · 0 评论 -
标准库特殊设施
C++ Primer学习笔记标准库特殊设施tuplebitset类型正则表达式术语tuplebitset正则表达式标准库特殊设施tupletuple是一个“快速而随意的”的数据结构。bitset类型string的下标编号习惯与bitset恰好相反:string中下标最大的字符用来初始化bitset中的低位。//二进制位序列为1111011101111bitset<13> bitvec(0xbeef);//二进制位序列为00001011111011101111bitset原创 2021-08-13 17:36:46 · 75 阅读 · 0 评论 -
object-oriented programming
OOP面向对象程序设计概述定义基类和派生类三级目录术语面向对象程序设计概述核心思想:封装、继承、多态。函数的运行版本由实参决定,即在运行时选择函数的版本,所以动态绑定有时被称为运行时绑定。定义基类和派生类基类通常都应该定义一个虚析构函数,即使该函数不执行任何实际操作也是如此。任何构造函数之外的非静态函数都可以是虚函数。派生类列表中的访问说明符的作用是控制派生类从基类继承而来的成员是否对派生类的用户可见。如果派生类没有覆盖基类中的某个虚函数,则该虚函数的行为类似其他的普通成员,派生类会直接继原创 2021-08-12 12:04:23 · 139 阅读 · 0 评论 -
模板与泛型学习三
重载与模板C++ Primer学习笔记重载与模板可变参数模板编写可变参数函数模板术语重载与模板编写可变参数函数模板C++ Primer学习笔记重载与模板函数模板可以被另一个模板或一个普通非模板函数重载。当有多个重载模板对一个调用提供了同样好的匹配时,应选择最特例化的版本。对于一个调用,如果一个非函数模板与一个函数模板提供了同样好的匹配,则选择非模板版本。可变参数模板一个可变参数模板就是一个接受可变数目参数的模板函数或模板类。可变数目的参数被称为参数包,模板参数包和函数参数包。编写可变参数原创 2021-08-11 19:21:53 · 114 阅读 · 0 评论 -
模板与泛型学习二
C++ Primer学习模板实参推断C++ Primer学习类型转换与模板类型参数术语类型转换和模板类型参数从函数实参来确定模板实参的过程被称为模板实参推断。类型转换与模板类型参数const转换:可以将一个非const对象的引用(或指针)传递给一个const的引用(或指针)形参。顶层const无论是在形参中还是在实参中,都会被忽略。数组或函数指针转换:函数形参不是引用类型。术语类型转换和模板类型参数...原创 2021-08-11 10:29:28 · 62 阅读 · 0 评论 -
模板与泛型学习一
C++ Primer学习笔记模板定义定义模板函数模板一个函数模板就是一个公式,可用来生成针对特定类型的函数版本。template <typename T>int compare(const T &r1,const T &r2){ if(r1<r2) return -1; if(r2<r1) return 1; return 0;} 模板以template关键字开始,<>部分表示模板参数列表,由多个模板参数组成,这里<typ原创 2021-08-10 20:44:48 · 65 阅读 · 0 评论