C++中结构体 和 类可以通用,结构体中也可以定义函数.区别:在于访问控制。
结构体中 缺省成员 都是public
类中 缺省:私有的
构造函数:
1。构造函数最重要的作用是创建对象本身;
2. C++规定,每个类必须有一个构造函数,没有构造函数,就不能创建任何对象
3. 如果没有提供构造函数,则C++提供一个默认的不带参数的构造函数(由C++编译器提供),完成对象创建
4. 如果定义了一个构造函数,则编译器不再提供默认的不带参的构造函数
析构函数:构造函数的 取反
对象生命周期结束的时候,会调用析构函数进行内存的回收和对象的释放
构造函数和析构函数 是由系统自动调用的
析构函数 不允许 有返回值,不能带参数,一个类中只能有一个析构函数
重载函数: 参数的类型,个数不同,返回值一样
1.void output();
int output();
不能构成重载,系统不知道调用哪一个
2.void output(int a, int b=4);
void output(int a);
有缺省值,也不行。
this指针:
1.this指针 是一个隐含的指针,它是指向对象本身,代表了对象的地址
2.一个类所有的对象 调用的成员函数都是同一代码段。
3.成员函数除了接受参数外,还接受到了一个对象的地址。pt.output(1,2)
这个地址被一个隐含的形参this指针所获取,他等同于执行this=&pt.
所有对数据成员的访问都 隐含的加上了前缀this->.x=0--->this->x=0.
根据传递对象的地址,来决定调用哪个对象的方法
多态性:虚函数,依据传递对象的类型,迟邦定,运行的时候根据对象的类型
在基类的方法前加 virtual,子类有调用子类的,没有去调用父类的
纯虚函数:一个类中如果含有,virtual void breathe()=0;则这个类为抽象类,不能直接实例化
子类如果没有去实现这个函数,则也为抽象类,不能实例化
引用:变量的别名,必须在定义的时候就进行初始化.引用不需要分配内存空间
int a = 6;
int &b = a;
b = 5;//a=5
int c = 10;
b = c;//a=10
传参的时候用的比较多,避免内存的拷贝
int change(int &a, int &b);
change(x,y);
分享到:
相关推荐
第一章 C++编程基础C++中,初始化各种变量可以用括号(面向对象的风格)例如:array(这里指普通数组,而不是C++11中的array类型)和vector的
c++学习笔记/知识要点精华版
C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记
c++学习笔记.pdf
c++学习笔记1 leetcode1:两数之和(map与vector)(csdn)————程序
C++学习笔记C++学习笔记C++学习笔记C++学习笔记C++学习笔记
C++学习笔记
【C++学习笔记】一份详细的学习笔记,让你轻松掌握C++编程!
C++学习笔记.docx
C++学习笔记: 以学习、思考、记录、分享为乐。
c++完美学习笔记c++完美学习笔记c++完美学习笔记c++完美学习笔记
C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记002
C++学习笔记
C++基础的学习笔记(其中的代码源件可私信留言) C++中的空头程序 使用C++书写hello world 学习变量 学习常量 标识符命名规则 数据类型 运算符 程序流程结构 数组 函数 指针 结构体
C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记003
C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记004
C++ 学习笔记C++ 学习笔记C++ 学习笔记C++ 学习笔记001
C++学习笔记经典(与C比较),是学习C++的好资料。
Visual C++学习笔记,切身学习体会和总结