![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础学习
gaoerji@
这个作者很懒,什么都没留下…
展开
-
C++ primer plus--第四章:复合类型
1.C++11数组初始化方法 使用大括号的初始化(列表初始化)作为一种通用初始化方式,新增功能如下: a.初始化数组时可以省略等号(=):double earning[4] {1.2e4,1.6e4}; b.可不在大括号内包含任何东西,将把所有元素都设置为0: unsigned int coun...翻译 2018-11-08 10:32:07 · 247 阅读 · 0 评论 -
C++ primer plus 第13章 类继承
面向编程的主要目的之一是提供可重用的代码。C++提供了更高层的重用性,目前,很多厂商提供了类库,类库由类声明和实现构成。因为类组合了数据表示和类方法。因此提供了比函数库更加完整的程序包。类库是以源代码的方式提供的,这意味着可以对其进行修改。而C++提供了比修改代码更好的方法来扩展和修改类——类继承。它能够从已有的类派生出新的类,而派生类继承了原有类(称为基类)的特征,包括方法。下面是可以通过继承完...原创 2019-01-09 11:05:58 · 370 阅读 · 0 评论 -
C++ primer plus 第16章 string类和标准模板库
template<class Iter>string(Iter begin,Iter end);//构造函数将使用begin和end指向的位置之间的值,对string对象初始化。[begin,end)意味着包含begin,但不包含end在内的区间,end指向被使用的最后一个值后面的一个位置。//假设要用构造函数将对象初始化为另一个string对象(five)的一部分strin...原创 2019-01-13 20:09:42 · 238 阅读 · 0 评论 -
C++ primer 第12章 类和动态内存分配
不能在类声明中初始化静态成员变量。因为声明描述了如何分配内存,但并不分配内存。对于静态类成员,可以在类声明之外使用单独的语句来进行初始化,这是因为静态类成员是单独存储的,而不是对象的组成部分。静态数据成员在类声明中声明,在包含类方法的文件中初始化。初始化时使用作用域运算符来指出静态成员所属的类,但如果静态成员是整型或枚举型const,则可以在类声明中初始化。构造函数必须分配足够的内存来存储字符...原创 2019-01-08 10:49:23 · 197 阅读 · 0 评论 -
C++ primer plus 第11章 使用类
1.添加加法运算符operator+()函数的名称使得可以使用函数表示法或运算符表示法来调用它。total=coding.operator+(fixing);//函数表示法total=coding+fixing;//运算符表示法多数C++运算符都可以用这样的方式重载。重载的运算符不必是成员函数,但必须至少有一个操作数是用户定义的类型。重载运算符的限制:(1)重载后的运算符必须...原创 2019-01-07 11:12:36 · 230 阅读 · 0 评论 -
C++ primer plus 第15章 友元、异常和其他
1.嵌套类嵌套类:将一个类的声明放在另一个类中,它通过提供新的类型类作用域来避免名称混乱。包含类的成员函数可以创建和使用被嵌套类的对象;而仅当声明位于公有部分,才能在包含类的外面使用嵌套类,而且必须使用作用域解析运算符。对类进行嵌套与包含并不同,包含意味着将类对象作为另一个类的成员,而对类进行嵌套不创建类成员,而是定义了一种类型,该类型仅在包含嵌套类声明的类中有效。2.异常(1)异...原创 2019-01-11 11:13:51 · 290 阅读 · 1 评论 -
C++ primer plus 第十章 对象和类
重要的面向对象编程特性:抽象、封装和数据隐藏、多态、继承和代码的可重用性。为了实现这些特性并将它们组合在一起,C++所做的最重要的改进是提供了类。类是一种将抽象转换为用户定义类型的C++工具,它将数据表示和操纵数据的方法组合成一个整洁的包。类声明:以数据成员的方式描述数据部分,以成员函数(被称为方法)的方式描述公有接口。类定义:描述如何实现类成员函数。通常,C++程序员将接口(类定...原创 2019-01-05 21:29:17 · 311 阅读 · 0 评论 -
C++ primer plus 第14章 C++中的代码重用
valarray类是头文件valarray支持的,它支持诸如将数组中所有元素的值相加及在数组中找出最大和最小的值的操作。valarray被定义为一个模板类,以便能够处理不同的数据类型。模板特性意味着声明对象时,必须指定具体的数据类型。使用valarray类来声明一个对象时,需要在标识符valarray后面加上一对尖括号,并在其中包含所需的数据类型:valarray<int> q_...原创 2019-01-10 21:10:26 · 238 阅读 · 0 评论 -
C++ primer plus 第9章 内存模型和名称空间
C++11中,关键字auto用于自动类型推断,但在C语言和以前的C++版本中,auto的含义截然不同,它用于显式地指出变量Wie自动存储。1.自动变量和栈程序必须在运行时对自动变量进行管理,常用方法:留出一段内存,并将其视为栈,以管理变量的增减。程序使用两个指针来跟踪栈,一个指针指向栈底——栈的开始位置,另一个指针指向堆顶——下一个可用内存单元。函数被调用时,其自动变量将被加入到栈中,栈顶...原创 2019-01-04 17:04:28 · 177 阅读 · 0 评论 -
C++ Primer Plus 第8章 函数探幽
1.C++内联函数 内联函数是C++为提高程序运行速度所做的一项改进。常规函数和内联函数之间的主要区别不在于编写方式,而在于C++编译器如何将他们组合到程序中。(编译过程的最终产品是可执行程序------由一组机器语言指令组成),如果代码执行时间短,则内联调用就可以节省非内敛调用使用的大部分时间。使用内联函数时:(1)在函数声明前加上关键字inline;(2)在函数定义前加上关键字inline...原创 2019-01-04 10:06:07 · 317 阅读 · 0 评论