将是一些零碎的记录。以前是系统学过C++的,但是现在决定再看一遍书。C++版本为C++11。
int初始化的四种方法
看到这个标题就想起“茴”字的四种写法。。。但是C++中变量初始化真的很重要。
int a = 0;
int a = {0};
int a{0};
int a(0);
C++操作符替代名
在C++中,一部分操作符是可以用替代名来替换的。。。直接看代码
#include <stdio.h>
int main() {
bool state1 = true;
bool state2 = false;
if(state1 xor state2) {
printf("Okkkkk");
} else {
printf("Nooooo");
}
return 0;
}
比如这段代码,就是合法代码,虽然这里面的if语句看起来很难令人接受。。
符号的多重含义
比如&
与*
对于&
,如果紧随类型名出现,那么就是引用,否则就是取地址符。
对于*
,如果紧随类型名出现,那么就是指针,否则就是解引用符。
指针的初始化
如果不知道指针具体指向哪里,在不需要引用任何内容的情况下,直接初始化为nullptr
复合类型的声明
int i = 1, *p = &i, &r = i;
变量的类型包括基本数据类型和声明符,在声明的时候,不应该为第一个变量的声明符就是所有变量的声明符。
例:
int *p1, p2; // p1是指向int的指针,p2是int
类型别名
老的做法
typedef double wages;
新的做法
using wages = double;