欢迎来到天天文库
浏览记录
ID:48167538
大小:416.00 KB
页数:94页
时间:2020-01-17
《C语言类和对象.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章类和对象2.1由结构到类的发展由结构到类的发展在C语言中,结构由若干成员组成。在C++中,结构中可以有函数。类是从结构演变而来的,C++最初称为“带类的C”。从结构到类的演变是从让结构含有函数开始的。2.1.1带函数的结构C++允许程序员在结构中定义函数,这样的函数称为成员函数。原来的结构成员称为数据成员,可使用如下的形式描述结构:struct结构名{数据成员成员函数};可以像结构变量那样使用成员函数:结构变量.成员函数(实参)例2.1在结构中使用成员函数的示例。structPoint{//数据成员doublex;//x坐标doubley;
2、//y坐标//成员函数voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<3、有公有(public)访问权限。面向对象程序设计的封装性包含了隐藏数据成员,可使数据成员具有私有(private)访问权限实现,这时将不能通过变量直接访问数据成员。例2.2使结构具有封装性的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<4、Pointv;//定义变量v.Set(6,18);//设置v的坐标v.Show();//显示v的坐标(6,18)//cout<<"("<5、问权限是private。2.1.2用构造函数初始化结构的对象构造函数用于初始化结构的对象。构造函数名与结构名相同,无返回值类型对于上面的结构Point,可声明如下的构造函数:Point(doublea=0,doubleb=0);例2.3使用构造函数初始化对象的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y6、=b;}voidShow()//显示坐标{cout<<"("<7、ex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
3、有公有(public)访问权限。面向对象程序设计的封装性包含了隐藏数据成员,可使数据成员具有私有(private)访问权限实现,这时将不能通过变量直接访问数据成员。例2.2使结构具有封装性的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<4、Pointv;//定义变量v.Set(6,18);//设置v的坐标v.Show();//显示v的坐标(6,18)//cout<<"("<5、问权限是private。2.1.2用构造函数初始化结构的对象构造函数用于初始化结构的对象。构造函数名与结构名相同,无返回值类型对于上面的结构Point,可声明如下的构造函数:Point(doublea=0,doubleb=0);例2.3使用构造函数初始化对象的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y6、=b;}voidShow()//显示坐标{cout<<"("<7、ex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
4、Pointv;//定义变量v.Set(6,18);//设置v的坐标v.Show();//显示v的坐标(6,18)//cout<<"("<5、问权限是private。2.1.2用构造函数初始化结构的对象构造函数用于初始化结构的对象。构造函数名与结构名相同,无返回值类型对于上面的结构Point,可声明如下的构造函数:Point(doublea=0,doubleb=0);例2.3使用构造函数初始化对象的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y6、=b;}voidShow()//显示坐标{cout<<"("<7、ex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
5、问权限是private。2.1.2用构造函数初始化结构的对象构造函数用于初始化结构的对象。构造函数名与结构名相同,无返回值类型对于上面的结构Point,可声明如下的构造函数:Point(doublea=0,doubleb=0);例2.3使用构造函数初始化对象的示例。structPoint{private://数据成员doublex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y
6、=b;}voidShow()//显示坐标{cout<<"("<7、ex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
7、ex;//x坐标doubley;//y坐标public://公有函数Point(doublea=0,doubleb=0)//构造函数{x=a;y=b;}voidSet(doublea,doubleb)//设置坐标{x=a;y=b;}voidShow()//显示坐标{cout<<"("<8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
8、n0;//返回值0,返回操作系统}2.1.3从结构到类的演化2.2面向对象程序设计技术面向对象程序设计技术面向对象的程序设计方法的关键要
此文档下载收益归作者所有