C++学习笔记(一)

前言

自我助记笔记,所以不会写非常详细

一 C++语言组成

1. 核心语言特性

例如:内建类型和循环等控制语句

2. 标准库组件

例如:向量,map和IO操作等

二 C++语言基础

C++作为一个面向过程或者对象的语言来说,基本的语言要素是类似的了。包括:类型,变量,常量,控制语句和循环,结构体(可以理解为一种聚合数据结构),类,以及那个年代的指针(用来表示内存地址的数据类型)~

2.1 类型和变量

2.1.1 类型

C++有四种基本类型:bool,char,int,double。
四种类型占用的字节数如下图


ps:
可以通过sizeof函数来查看,当前类型的字节数。
标准库里面还支持complex和vector这样的数据类型。

2.1.2 变量

    int a = 10; // 类型 变量名 = 变量值;

我们可以通过上面的方式来定义一个变量。随着语言的进化,现在我们也可以这样使用

    auto a = 10;

使用auto关键字来定义变量,编译器会自动推断出类型。
ps:和java的var一样,一般来说这样子会有坑,等实际用的时候再看看。

2.2 常量

C++支持两种类型的常量

  1. const:
  2. constexpr

2.3 控制语句和循环

C++支持的控制语句和循环:

  1. if
  2. switch
  3. while
  4. for

2.4 指针,引用类型和数组

指针是保存内存地址的数据类型。通过寻址运算符(*),我们可以访问一个指针保存地址的数据。
数组的本质也是一段指针,通过[]符号,根据数据类型进行寻址访问。

2.5 结构体和类和枚举类型

结构体在c语言里面就存在。它是用来组织一组数据的数据结构。
类是我们对现实世界一种抽象的数据结构,它具有属性和方法。如果没有方法的话,可以退化成结构体。
枚举是固定集合范围内一个代表。

三 总结

哎,要不是必须要用了,我也不会来学C++。大学时候老师讲解C++就是为了介绍类的概念,所以压根和没学差不多,现在需要回来补了,说多都是泪。