C++拾遗
字符串字面值是一串常量字符(是一个常量),字符串字面值常量用双引号括起来的零个或多个字符表示,为兼容C语言,C++中所有的字符串字面值都由编译器自动在末尾添加一个空字符。字符串字面值的类型就是 const char 类型的数组。标准库函数 strlen 用于计算 C 风格字符串中的字符个数, 不包括 null 结束符。
C++风格字符串:string
那么string a1=“hello”//这个就是string string a2=a1+"world"//其中a1 是string “world”是字符串字面值
C风格字符串:字符串字面值的类型实质是const char类型的数组。C++从C语言继承下来的一种通用结构是C风格字符串,而字符串字面值就是该类型的实例。
2 关于size_type
标准库类型将size_type定义为unsigned类型
3指针的两种定义方式
4指针赋值和引用赋值的区别
(ps:引用的初始化是一次性的)
int *const curErr = &errNumb; // curErr is a constant pointer
5 符号的结合性
6 多用前置的++
只有在必要时才使用后置操作符(i++),因为这种情况需要先保留原值。
由于后自增操作的优先级高于解引用操作,因此 *iter++ 等效于 *(iter++)。子表达式 iter++ 使 iter 加 1,然后返回 iter 原值的副本作为
7点操作符和箭头操作符
8 new创建
1. new() 分配这种类型的一个大小的内存空间,并以括号中的值来初始化这个变量;
. U* t, v# ~% u
2. new[] 分配这种类型的n个大小的内存空间,并用默认构造函数来初始化这些变量;
9 三种内存管理容易出现的毛病
10 类型转换
dynamic_cast :支持运行时识别指针或引用所指向的对象
const_cast :将转换掉表达式的 const 性质
static_cast: 编译器隐式执行的任何类型转换都可以由 static_cast 显式完成
reinterpret_cast: 通常为操作数的位模式提供较低层次的重新解释
11 if_else 匹配
12 异常处理
13 const
const对象,指向const对象的指针或者引用只能用于调用其const成员函数,如果尝试用它们来调用非const成员函数,则是错误的。
如果使用引用形参的唯一目的就是避免复制实参,则应将形参定义为const引用
不需要修改的引用参数定义为const引用,普通的非const引用形参在使用时不太灵活,这样的形参既不能使用const对象初始化,也不能用字面值或者产生右值的表达式初始化。
14 关于数组作为参数
15 STL
_______________________________________________________________无聊的
分割
面向对象
1 类作用域中名字的查找
函数内——函数外类内部——类外函数定义之前
2构造函数中的初始化式
>>>构造函数初始化式只在构造函数中定义而不是声明中指定
构造函数分两个阶段执行
first: 初始化阶段,指的是“()”初始化列表中初始化
second: 计算阶段,“{ }”,有构造函数体中的所有语句组成
在第二种方式中,是先隐式的使用默认的构造函数来初始化,最后在{}中覆盖····
必须对任何const或者引用类型成员以及没有默认构造函数的类类型的任何成员使用初始化式
3 static ;const; const static三种成员的初始化
class Test
{
public:
Test():a(0){}
enum {size1=100,size2=200};
private:
const int a;//只能在构造函数初始化列表中初始化
static int b;//在类的实现文件中定义并初始化
const static int c;//与 static const int c;相同。
}; int Test::b=0;//static成员变量不能在构造函数初始化列表中初始化,因为它不属于某个对象。
cosnt int Test::c=0;//注意:给静态成员变量赋值时,不需要加static修饰符。但要加cosnt
PS:static函数成员没有this指针,它属于类,不属于这个类的对象
4 explicit关键字
用来防止隐式类型转化
C++拾遗的更多相关文章
- Redis命令拾遗二(散列类型)
本文版权归博客园和作者吴双共同所有,欢迎转载,转载和爬虫请注明原文地址 :博客园蜗牛NoSql系列地址 http://www.cnblogs.com/tdws/tag/NoSql/ Redis命令拾 ...
- 基础拾遗------redis详解
基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...
- unixLike命令拾遗
针对在日常工作过程中,发现的学习的漏洞和忘记的知识,进行拾遗. 编辑命令 一.vim操作 1.进入编辑模式 在光标移到将要编辑处,点击i,进入编辑模式 2.退出编辑模式 按esc或者crtl+c退出编 ...
- 基础拾遗------webservice详解
基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...
- try catch 与 throw拾遗
今天在微软虚拟学院看到的代码: var b = 0; try{ if (b == 0) { throw('NO NO!!'); } else { alert('OK OK'); }} catch(e) ...
- [python拾遗]异常处理
异常 异常(Exception)是因为程序的例外.违例.出错等情况而在正常控制流以外采取的行为,一般分为如下两个阶段: 1.异常发生:一个错误发生后被打印出来,称为未处理异常,而默认的处理则是自动输出 ...
- 笔记:html 拾遗之一
html 拾遗之一 今天翻了下w3schools.com 把忘掉的语法记一下(仅常用但是不熟的部分) img alt 属性,当图片无法显示时可显示alt属性的文字 br 换行 < html la ...
- JavaScript 位运算总结&拾遗
最近补充了一些位运算的知识,深感位运算的博大精深,此文作为这个系列的总结篇,在此回顾下所学的位运算知识和应用,同时也补充下前文中没有提到的一些位运算知识. 把一个数变为大于等于该数的最小的2的幂 一个 ...
- [python拾遗]列表
python列表拾遗 1.列表可以修改,使用 ‘+’ 将一个新列表附加在原列表的尾部: >>> a = [1,'a'] >>> b = a + [2,'b'] &g ...
- 闭包拾遗 & 垃圾回收机制
闭包拾遗 之前写了篇<闭包初窥>,谈了一些我对闭包的浅显认识,在前文基础上,补充并且更新些对于闭包的认识. 还是之前的那个经典的例子,来补充些经典的解释. function outerFn ...
随机推荐
- Android Developers:按需求加载视图
有时候你的布局可能需要较少使用的复杂视图.无论它们是项目详情,进度指示器,或者处理的信息,你能通过在它们被需要的时候加载的方式,来减少内存消耗和加快显示. 定义一个ViewStub ————————— ...
- java的IO流包装不当导致从网页获取的数据出现乱码
从网页上获取数据时必须要注意字符集的问题.处理不慎确实苦不堪言. 例如通过URL连接时,将字节流InputStream包装成字符流(以便直接存为String)时,一定要注意加上charsetName这 ...
- [LeetCode]题解(python):117-Populating Next Right Pointers in Each Node II
题目来源: https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/ 题意分析: 根据上一题,如果给定 ...
- 论left-pad的实现
这两天微博上看到左耳朵耗子吐槽了一下node社区的left-pad的代码,原po链接 我也思考了一下 怎么用实现一个left-pad比较合适,上图代码确实比较搓 leftpad功能,就是字符串前面拼指 ...
- 内核加载与linux的grub
计算机系统的启动是一个复杂的过程,启动过程大致可以分为以下几个阶段: +------计算机系统启动流程----------------------------- ------------------- ...
- 深究带PLL的错误复位设计
PLL复位通常犯的错误 或者是像上一篇文章 FPGA知识大梳理(四)FPGA中的复位系统大汇总 中的图一样,也是错误设计.为何呢?看ALTPLL (Phase-Locked Loop) IP Cor ...
- VICC国际标准ISO15693下载
疏耦合卡(VICC)国际标准ISO15693-1点击下载 疏耦合卡(VICC)国际标准ISO15693-2点击下载 疏耦合卡(VICC)国际标准ISO15693-3点击下载
- Python学习入门基础教程(learning Python)--2.2.1 Python下的变量解析
前文提及过变量代表内存里的某个数据,这个说法有根据么? 这里我们介绍一个python内建(built-in)函数id.我们先看看id函数的帮助文档吧.在python查某个函数的帮助文档很简单,只用he ...
- [置顶] JDK-Future 模式和实现
最近的项目用到了多线程,发现java.util.concurrent.Future蛮好用的. 像平时,写多线程一般使用Thread/Runnable,直接扔给线程池执行就好了.但是遇到了一些需要获取线 ...
- JavaScript算法描述(一)
function swap(arr,index1,index2){ var temp=arr[index1]; arr[index1]=arr[index2]; arr[index2]=temp; } ...