C++面向对象程序开发-类与对象

1.C语言内容跳转链接

1.C语言核心语法-CSDN博客

2.C语言运算符-CSDN博客

3.C语言流程控制语句_c语言的流程控制语句-CSDN博客

4.C语言函数-CSDN博客

5.C语言数组-CSDN博客

6.C语言数组常见算法-CSDN博客

7.C语言指针_c语言指针p-CSDN博客

8.C语言(续)-CSDN博客

2.类与对象

1.定义:用于指定对象的形式,是一种用户自定义的数据类型,是一种封装了数据和函数结合,类中的数据称为成员变量,函数成成员函数,类可以被看作是一种模板,可以用来创建具有哦相同属性和行为的对各对象,本质上是定义一个数据类型的蓝图,它定义了类的对象包括了什么,以及可以在这个对象上执行那些操作

2.需要定义的操作:使用关键字class,然后指定类的名称,并类的主题是包含在一对大括号中,主题包含类的成员变量和成员函数

3.关键字public

1.作用:确定类成员的访问属性,在类对象作用域内,公共成员在类的外部是可访问的,我们也可以指定类的成员为private或protected

2.公有成员(public):在程序中类的外部是可访问的,可以不使用任何成员函数来设置和获取共有变量的值

3.私有成员(private):在类的外部不可访问和查看,只有类和友元函数可以访问,默认情况下,类的所有成员都是私有的

4.protected成员:与私有成员十分相似,但是在子类可访问

4.struct和class的区别:struct默认权限为公共,class默认权限为私有

5.私有的成员和受保护的成员不能使用直接成员访问运算符(.)来直接访问

6.构造函数:

1.在每次创建类的新对象时执行

2.名称与类名称完全相同,而且不会返回任何类型和void,构造函数可用于为某些成员变量设置初始值

3.默认构造函数没有任何参数,但是需要时构造函数也可以带参数,这样在创建对象是就会给对象赋予初始值

4.可以用列表来初始化类的参数

1.可以使用在不同字段使用逗号进行分隔

7.析构函数

1.名称与类的名称完全相同,只是在前面加了一个(~)作为前缀,他不会返回任何值,也不能带有任何参数,有助于在跳出程序前(关闭文件,释放内存)前释放资源

2.在每次删除所创建的对象时执行

8.成员函数,静态成员

1.成员函数:值把定义与原型写在类定义内部的函数,就像类定义中的其他变量一样,类成员函数是类的一个成员,它可以操作类的任意对象,可以访问对象中的所有成员,也可以在类的外部使用范围解析运算符::定义该函数

2.可以使用static关键字来把类成员定义为静态的,当我们声明类的成员为静态时,这意味着无论创建多少个类的对象,静态成员都只有一个副本(谁都可以操纵它,并且只能操纵这一个)

3.静态成员变量所有对象分享同一份数据,在编译阶段分配内存,在类内声明,类外初始化

4.静态成员函数左右对象共享同一个函数,静态成员函数只能访问静态成员变量

9.const修饰成员函数

1.常函数:成员函数后加const称为常函数,常函数内不可以修改成员属性

2.常对象:声明对象前加const成该对象为常对象,常对象只能调用常函数

10.类的友元函数

1.定义:定义在类外部,但有权访问类的所有私有(private)和保护(protected)成员,尽管友元函数的原型又在类的定义中出现过,单数有缘函数并不是成员函数

2.友元可以是一个函数,该函数被称为友元函数,有缘也可以是一个类,该类被称为友元类,在这种情况下,整个类及其所有成员都是友元

3.如果要声明函数为一个类的友元,需要在类定义中该函数原型前使用关键字friend

11.this指针:指向当前对象的实例,每一个对象都能通过this指针来访问自己的地址

1.是隐藏指针,可以在类的成员函数中使用,可以用来指向调用对象

2.当一个对象的成员函数被调用时,编译器会隐式地传递该对象的地址作为this指针

3.友元函数没有this指针,因为友元不是类的成员,只有成员函数才有this指针

相关推荐
東隅已逝,桑榆非晚2 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
qq_406981032 小时前
c++拷贝构造函数
开发语言·c++
爱喝雪碧的可乐3 小时前
MATLAB
开发语言·算法·matlab
H.莓飛5 小时前
【C++】【STL】vector_OJ题
linux·服务器·开发语言·数据结构·c++·visual studio
Rabitebla5 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
沫璃染墨5 小时前
从零入门计算机网络系列(十五):TCP可靠传输机制详解——从序号与确认应答到乱序处理
服务器·网络·c++·tcp/ip·tcp
青少儿编程课堂5 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:Bellman-Ford与SPFA含负权最短路及负环检测全解析
c++·python·算法·bfs·信息学竞赛
旖旎夜光6 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习
j7~6 小时前
【C++ 八股文】(篇四)C++11 新特性
开发语言·c++·面试·c++11·八股文