面向对象与面向过程

1联系与区分
试想一下,有一个 活动 ,篮球比赛。
需要记录篮球运动员的的得分,抢断,助攻的数据,以及比赛的分数。
如果说,用面向过程的方法,需要什么?
(1)要一个方法写入分数,第二个方法写入运动员的抢断…
以及要把数据更新以及显示出来 ,这是第一个运动员。
第二个运动员又要重复,很不方便。
我们就想到用面向对象的思路。
(2)把每一个运动员看成一个对象,包含得分,抢断,助攻的数据。
只要思考怎么设计这个对象,有几个远动员,就声明几个对象就完事儿。
2抽象与类
问题往往是复杂的,要问题进行简单化和抽象化,就是找到必要的要素,
公共部分,类就是对一个具体对象的抽象,提取不可或少的成分。
3类的公共接口
一个程序是由许多对象组成的,对象间数据的传输,方法的调用就是通过这个
公共接口来实现的。
4成员获取权限Public or private
public 是公共接口,private对相当于数据进行了封装,只有在public 中的方法来获取。private在class中是默认的,不需要在数据类型前加上说明符private。
5内联函数的介绍
在头文件中,函数的内容较少,直接给出定义;
此外还可以在函数外给函数定义是用说明符 inline修饰为内联函数。
inline void Stock::show()
{

}
6构造函数与析构函数
当我们使用class时候,数据的hiding是其中的一个基本属性,private声明的数据成员
意味着你不能直接得到,必须通过成员函数间接使用。
7如何声明一个对象。
普遍有两种方法:
假设有一个class:Student
(1)Student student(lilei,18,2);
(2) Student student1 = Student(wanglei,20,2)
可把对象复制给另一个具有相同结构的对象
student1 = student

c++11新特性
可以通列表初始化对象
如:
Student student2 = {“xiaoming”,18,2};
Student srtudent3{“xiaowang”,23,2};
8在class中定义常亮;

class ABC
{
	const int Months = 12; //这是不对的
	//可以通过两种方式,一是枚举,另一个是static
	enum{Months=12};
	static const int day = 365;
}

9枚举类型名字冲突
c++11之前;
enum class a{small,long};
enum class b(small,long);
这是不行的,因为 a small 与 b small在同一个作用域中
c++11 解决了这个冲突

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值