【编程语法-c++】课堂总结08-12
变量
- 在c++中,不同数据类型的唯一区别就是大小。
- 变量的大小和compiler有关
- 数字和符号本身是可连通转换的,但char会把它当作字符处理,例如char 65,我们会得到‘a’这个字符,而short a,我们会得到65这个数字
int //size: 4 byte, 带符号整数,signed int, 范围(-2 billion ~ 2 billion) 1 byte = 8 bits --> 4 byte = 32 bits --> -2^31~2^31 (int 因为一个位置需要存放负号) --> 0~2^32 (unsigned int) char // size: 1 byte short // size: 2 byte int // size: 4 byte long // size: 4 byte long long // size: 4 byte 所有都默认符号数,可以加unsigned关键字增加表示范围 float // size: 4 byte double // size: 8 byte float a = 1.2 //实际上1.2是double类型 float a = 1.2f or 1.2F //这才是真正声明float类型 bool // size: 1byte,虽然只用存储0,1,看起来只需要1bit,但是计算机访问内存的最小单位是byte 思考:可以8个bool存成1个byte减少内存
变量转换:
- 指针 类型 + *
- 引用 类型 + &
函数
在程序中过多的使用函数会减慢程序运行效率。
头文件
主要目的是告诉所有使用头文件的cpp文件,工程中存在某个函数,当然函数主体可能在工程里的其他cpp文件里,如果没有,那么在build linker就会报错。
#pragma once //一般会默认加在头文件,确保该头文件不会被重复复制到cpp中 // 还有一种方式是在头文件加 #ifndef _LOG_H #define _LOG_H xxxx #endif 这样就确保只会复制一次
.h结尾的的标准库属于c,没有后缀的标准库,例如iostream,属于c++标准库。
断点
断点是调试程序的重要方式,记得切换到debug模式进行调试。
conditions and branches in c++ (if statements)
branches 会减慢我们程序的运行速度。
在c++中的 ==,>,<,&,/,等运算符近似是一个函数,已经在标准库进行了定义。
条件判断的过程就是内存互相跳转的过程。就是跳转到对应的汇编语言存在的内存地址上。

查看7道真题和解析