关于C++面向对象的理解

关于C++面向对象的理解,第1张

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录
  • 面向对象的方法
  • 一、面向过程
  • 二、面向对象
  • 总结


面向对象的方法

首先就要对对象进行抽象,跟C中的结构体类似,在C++中也要新建一个类型,只不过C++中的类型叫做class,在类中,可以有成员变量,和成员函数。同时在类中还对成员的访问属性做了区分,有三种属性,public,protected,private。
和C语言不同的是,在类里面可写函数。
所以在使用C++的时候:
1、要做类的抽象,成员变量和成员函数;
2、实例化:所谓实例化,就是用定义的数据类型“类”来定义变量,定义出来的变量,就叫做对象;
3、面向对象的编程,加工的过程就是在处理一个一个类;面向过程加工的是一个一个的函数;
4、最后在测试程序。

特别的,要注意类的执行过程:类的执行过程不是将类的代码一步一步执行的,而是用的时候去调用需要的部分。同时类是一个数据类型,是一个固定大小的内存块的别名,定义一个类,是一个抽象的概念,不会给实际的分配内存,只有在用数据类型定义变量的时候才会分配内存。

要考虑的是,C++是如何区分不同的对象去调用了类中的方法。
class类是1个数据类型和n个对象的关系。那么要思考的是,C++编译器是如何处理多个对象调用类的成员函数的。

一、面向过程
	double r = 0;
	double s = 0;
	cout << "请输入圆的半径:";
	cin >> r;
	cout << "r的值是: " << r << endl;
	s=3.14*r*r;
	cout << "圆的面积是:" << s << endl;
二、面向对象
class Mycircle
{

public:
	double m_r;	//半径
	double m_s;	//面积
public:
	void setR(double r)
	{
		m_r = r;
	}
	double getR()
	{
		return m_r;
	}	
	double getS()
	{
		m_s = 3.14*m_r*m_r;
		return m_s;
	}
};


void main()
{

	Mycircle c1, c2, c3;//用类定义对象
	double r1 = 0;
	double r2 = 0;
	cout<<"请输入第一个圆c1的半径:";
	cin >> r1;
		//给C1的半径赋值
	c1.setR(r1);
	cout << "c1的面积是:" << c1.getS() << endl;

	cout<<"请输入第二个圆c2的半径:";
	cin >> r2;
		//给C1的半径赋值
	c2.setR(r2);
	cout << "c2的面积是:" << c2.getS() << endl;

	system("pause");

}
总结

1、面向对象的方法,将数据和对数据的 *** 作方法(函数),封装在一起,作为一个相互依存,不可分离的整体。
2、对同类型对象提出其公共属性,形成类。
3、类通过外部接口,与其他部分发生联系。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1354260.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-14
下一篇2022-06-14

发表评论

登录后才能评论

评论列表(0条)

    保存