前言
这篇文章的知识点均来自B站的视频内容,视频链接我会放在文章最下方。记录这篇文章的目的是为了不时回头看看已经学过知识点,视频学的时候方便,但并不适合找一些零碎的,模糊的知识点。
提示:内容的提取是依照我自己已有的知识来筛选的,没有找到的话各位只能去看视频找了。
一、C++基础编程?
示例:基础编程包括指针和结构体
1.指针
声明指针 [数据类型] *p = &a; (我在这想多说一嘴,这个[数据类型]要和a的数据类型一样,即等号两边的数据类型要相同) 这说明P指向a的地址,如果想访问a,就需要解引用,即*p,比如cout<< *p << endl;
常量指针: Const int *p=&a; *p=20; //错 p=&b; //对 理由: const排前修饰int *指针叫做常量指针,这个指针的指向是可以被更改的,但指针所指的值不可以修改。
指针常量: Int * const p = &a; *p=20; 对 p=&b; 错 理由: const在后修饰p叫做指针常量,这个指针的指向不允许更改,但指针所指的值可以修改。
Const指针和常量都修饰: const Int * const p = &a; *p=20; 错 p=&b; 错 理由: const修饰既修饰指针又修饰常量,那么这个指针的指向和所指的值都不允许修改。
记忆方法: 第三个应该是不用说了,我说指针常量和常量指针怎么记:实际上,函数在定义参数的时候,有时候会加"&",也就是引用,把这个加在变量前面,就变成了指针常量,也就是只能修改它的值,但不能修改它的地址,也就是不能改变指针的指向,下面一个代码块形象的展示了这个道理。
#include<iostream>
using namespace std;
void printNewValue(int &a){
cout<<"修改前的值:"<<a<<endl;
a = 10;
int b=20;
a = &b;
cout<<"修改后的值: "<<a<<endl;
}
int main(){
int a=100;
printNewValue(a);
return 0;
}
结构体
结构体,我理解成是用户自定义的变量集合,里面可以自己定义想要的数据类型,灵活多变,我在这介绍结构体的三种创建方式:
struct Stuedent{
string name;
int age;
};
struct Stuedent{
string name;
int age;
}s;
上述两个结构体的创建方式其实区别很小,第二种就是最后一行多了一个"s",这表示声明了一个变量s代表这个结构体,只不过内部的变量还没被赋值。这两种方式的使用方法如下:(struct在主函数中不写也没关系)
int main()
{
struct student s;
s.name=”asda”;
s.age=18;
return 0;
}
二、C++核心编程
今天有点累了,暂时写到这(纯纯牛马顶不住阿,一会前端一会后端,没时间沉浸在一个东西上。。。)
参考
B站《黑马程序员C++教程》
|