哦我的老朋友为什么我的学校我的专业我这一届只学习C而不是C++?
#include <iostream>
using namespace std;
1.标准模板库(STL),提供了大量的方法,用于操作数据结构等。就是这么方便
2.面向对象
对象 - 对象具有状态和行为。例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例。
类 - 类可以定义为描述对象行为/状态的模板/蓝图。
方法 - 从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执行所有的动作。
即时变量 - 每个对象都有其独特的即时变量。对象的状态是由这些即时变量的值创建的。
3.多了的数据类型
宽字符型 wchar_t
其实
typedef wchar_t short int;
所以 wchar_t 实际上的空间是和 short int 一样。
4.endl即为反杠n
5.typedef type newname
比如 typedef int gouzi
那么可以说 gouzi jizhi 来定义jizhi这个int型变量
6.枚举类型enum
形如
enum 枚举名{
标识符[=整型常数],
标识符[=整型常数],
…
标识符[=整型常数]
} 枚举变量;
一个变量仅有几种可能的值时,可以定义为枚举类型。eg:
enum dog {ala,gold,chai} gouzi;
gouzi=ala;
需要注意的特例:
enum color { red, green=5, blue };
在这里,blue 的值为 6,因为默认情况下,每个名称都会比它前面一个名称大 1,但 red 的值依然为 0。
7.变量也好函数也好,声明的时候可以提供个名字,然而实际定义却可以在任何地方进行。
8.变量的作用域三类,但在函数中的同名局部变量在被实际定义赋值时会把前面赋值的全局变量覆盖掉。
注意正确地覆盖和初始化变量!
9.int型数实例
85 // 十进制
0213 // 八进制
0x4b // 十六进制
30 // 整数
30u // 无符号整数
30l // 长整数
30ul // 无符号长整数
float实例
3.14159 // 合法的
314159E-5L // 合法的
510E // 非法的:不完整的指数
210f // 非法的:没有小数或指数
.e55 // 非法的:缺少整数或分数
10.宏定义(预处理器)#define
#define identifier value
例如 #define MONTH 30
程序内使用const也可以有类似效果
const type variable = value;
例如 const int MONTH=30;
此处MONTH为变量
11.C++ 修饰符类型四种
- signed
- unsigned
- long
- short
12.类型限定符
13.存储类
1)auto 关键字用于声明变量时根据初始化表达式自动推断该变量的类型
2)register 存储类用于定义存储在寄存器中而不是 RAM
中的局部变量。
3)extern 存储类用于提供一个全局变量的引用,全局变量对所有的程序文件都是可见的。
4)mutable 说明符仅适用于类的对象
5)使用 thread_local 说明符声明的变量仅可在它在其上创建的线程上访问。
14.运算符
位运算符
& | ^ 与 或 异或 >>右移
优先级顺序(转自runnoob)
15.? : 运算符:? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个 ? 表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个 ? 表达式的值。
Exp1 ? Exp2 : Exp3;