- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[电脑基础知识]C课件类和对象
面向对象编程技术-类和对象;对象和类;类概念和定义;类概念和定义;类概念和定义;访问权限修饰符:公有的(public)、私有的(private)和保护的(protected);;示例(tdate.h); day=d;
}
int TDate::IsLeapYear()
{
return (year%4==0 year%100!=0)||
(year%400==0)
}
void TDate::Print()
{
coutyear.month.dayendl;
};类概念和定义;类概念和定义;类概念和定义; 定义类时的注意事项;定义类时的注意事项(续);类概念和定义;类概念和定义;内联函数和外联函数;内联函数和外联函数;类概念和定义;inline void Location:: Init(int initX,int initY)
{
X=initX;
Y=initY;
}
inline int Location::GetX()
{
return X;
}
inline int Location::GetY()
{
return Y;
};类范围(classs scope)
类的数据成员和成员函数属于该类的类范围。
成员函数在类中有函数范围
成员函数内定义的变量只能在该函数内访问。
如果成员函数定义与类范围内的变量同名的变量,
则在函数范围内,函数范围内的变量掩盖类范围内的变量。这种隐藏变量可以通过在前面加上类名和作用域运算符(::)而访问。 ;类的作用域
指类定义和相应的成员函数的定义范围。
在该范围内,一个类的成员函数对数据成员有访问权限。在类的作用域外,数据成员和成员函数的访问受限。
即把一个类的数据结构和功能封装起来。;对象;定义对象的几种形式;对象;对象成员的表示方法;对象成员的表示方法(续);// 用指针访问对象成员
#includeiostream.h
class Tclass
{ public :
int x, y ;
void print() { cout x , y endl ; } ;
} ;
int add( Tclass * ptf ) { return ( ptf-x + ptf-y ) ; }
void main()
{ Tclass test, * pt = new(Tclass) ;
pt-x = 100 ; pt-y = 200 ;
pt-print() ;
test.x = 150 ; test.y = 450 ;
test.print() ;
cout x+y= add(test) ;
};对象的5种操作
(1)对象之间可以相互赋值。
Location locationA, locationB;
locationA.set (5,6);
locationB = locationA;
locationB和locationA的数据成员有相同的值。
(2)对象可以作为数组的元素。
Location arrayloc[100];
arrayloc是以结构Location为元素的数组。 ;(3)可以说明指向对象的指针,但不能取私有数据
成员的指针或成员函数的地址。
Location location;
Location *pointLoc = location;
当pointLoc被加1后,它将指向下一个Location对象。
(4)对象可以作为函数的参数,
既可作值参也可以作引用参数。
void display(Location location)
{ ... };
;(5)一个对象可以是另一个类的成员。
;用类去定义对象时,系统会为每一个对象分配存储空间。如果一个类包括了数据和函数,要分别为数据和函数的代码分配存储空间。;class Location {
private:
??? int X,Y;
public:
??? void init(int x,int y)
??? {??????? X=x;
????? ?? Y=y;??? }
int getX( )
??? {??? return X;??? }
int getY( )
??? {??? return Y;??? }
}
;;#include iostream.h
struct Time
{
i
文档评论(0)