c++primer要点-类

原创 2015年07月10日 13:38:06

1.常量对象,以及常量对象的引用或指针都只能调用常量成员函数。

2.友元的声明仅仅指定了访问的权限

3.mutable声明的数据成员即使在const成员函数中也能被修改

4.如果没有在构造函数的初始值列表中显式的初始化成员,则该成员将在构造函数之前执行默认初始化。随着构造函数一开始执行,初始化就完成了。

  构造函数的初始值有时必不可少:当成员是const或引用;当成员是类类型且没有定义构造函数。

  成员的初始化顺序与它们在类定义中的出现顺序一致。

5.委托构造函数在自己的初始值列表中调用它所属类的其它构造函数执行自己的初始化过程。

6.转换构造函数:如果构造函数只接受一个实参,则它实际上定义了转换为此类类型的隐式转换机制。可以通过声明为explicit加以阻止

7.通常情况下,类的静态成员不应该在类的内部初始化,不过当静态成员是constexpr,可以提供常量表达式的类内初始值。

  静态数据成员可以是不完全类型,即可以是自己所属的类类型。

  静态成员可以作为默认实参。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C++ primer 要点总结

1. private和protected类型的数据成员或成员函数,不能被对象直接引用。包括构造函数 2. static成员函数只能操作static数据成员,它没有this指针 3. static数...

C++知识要点整理08:类模板

1.类模板    对于功能相同而数据类型不同的一些函数,不必一一定义各个函数,可以定义一个可对任何类型变量进行操作的函数模板,在调用函数时,系统会根据实参的类型,取代函数模板中的类型参数,得到具体的...

C/C++知识要点6——定义只能在堆/栈上生成对象的类

在C++中,类的对象建立分为两种,一种是静态建立,如A a;另一种是动态建立,如A* ptr=new A; 区别: 静态建立一个类对象,是由编译器为对象在栈空间中分配内存,是通过直接移动栈...

字符串函数要点总结——《C Primer Plus》笔记系列2

Attention C,字符串函数要点总结,《C Primer Plus》笔记系列

C++ Primer Plus学习笔记之String类

C++ Primer Plus学习笔记之String类 一,string类的构造 1)string(const char *s)将string对象初始化为s指向的传统的C字符串 2)stri...

C++ primer第二次阅读学习笔记(第12章:类)

第十二章:类 类的成员可以是数据、函数或类型别名。 在类内部声明成员函数是必须的,但是可以不在类内定义。在类内部定义的函数默认为inline。也就是说,当它们被调用时,编译器将试图在同一行内扩展该...

C++ Primer Plus学习:第十章 对象和类(1)

类型   决定数据对象需要的内存数量   决定如何解释内存中的位(long和float在内存中占用的位数相同,但将它们转换为数值的方法不同)   决定可使用数据对象执行的操作或方法 类   ...

C++ Primer笔记(十)类

类的成员可以是数据、函数或类型别名。 在类内部声明成员函数是必须的,但是可以不在类内定义。在类内部定义的函数默认为inline。也就是说,当它 们被调用时,编译器将试图在同一行内扩展该函数...

C++ Primer Plus学习:第十一章 使用类(2)

友元   创建友元函数 原型放在类声明中 friend Time operator*(double m,const Time &t);   编写函数定义 重载   ostream & oper...

Primer plus C++ 第十六章 string类_构造函数

/* * 介绍string类; * 我们先来了解一下string的构造函数: * 1)将string对象初始化为s指向的NBTS * string(const char *s) * 2) ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)