- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
远离手机1小时;第5次 面向对象思想;class CPoint
{
public:
int x;
int y;
public:
CPoint(int x1,int y1)
{
x=x1;y=y1;
}
};;class CPoint
{
public:
int x;
int y;
public:
void f(int x1,int y1)
{
x=x1;y=y1;
}
};;和其他数据类型的变量一样,对于对象的访问,我们既可以通过对象名,也可以通过对象地址来访问一个对象。
对象指针就是用来存放对象地址的变量。
1、声明:
类名 *对象指针名;
例:
CPoint *p_point; //指针变量声明
CPoint myPoint;
p_point =myPoint; //赋值要用取得对象的地址;2、调用
对象指针名-成员名
例:p_clock-showTime();
3、注意
对指针使用前,一定指向一个实例化的对象,才能使用。
通过对象指针,访问的是所指向对象的公有成员;6.3 动态内存分配;;;;OOP中的this指针;;this指针;class CPoint
{
int x;
int y;
public:
CPoint():x(0),y(0){}
void f(int i,int j)
{
x = i,y=j;
}
};
//其中,非静态成员函数
add在编译器看来应该是:
void f(int i,int j, CPoint * const this)
{
this-x = i; this-y = j;
};this指针;#include iostream
using namespace std;
class Person
{
public:
Person(string n, int a);
Personadd_age(int i);
int get_age(void) const{ return age;
}
private:
string name;
int age;
};;类的静态成员;类的静态成员;
静态成员
的内存区;1、静态数据成员
对比:
类的普通数据成员:在每个对象中都拥有一个独立空间,即每个对象的同名数据成员可以分别存储不同数值;
类的静态数据成员:以static关键字来声明,每个类只有一份拷贝,这个类的所有对象共同维护使用这个拷贝,从而实现同一类的不同对象之间的数据共享。
静态数据成员的声明:
在类的声明中对静态数据成员进行引用性说明,
必须在.CPP作用域的某个地方使用类名限定符::进行定义性说明,同时可以进行初始化。
注意:静态数据成员在声明时如果没有赋初值,系统会自动为其赋初值为0。;class point
{
public:
point(int xx=0,int yy=0)
{x=xx;y=yy;countP++;}
point(point p ) ;
int getX()
{return x;}
static void getC()
{coutobject id:countPendl;}
static int countP;
private:
int x,y;
};;静态成员;静态函数成员;#include iostream.h
class Point
{
public:
Point(int xx=0,int yy=0) {X=xx;Y=yy;countP++;}
Point(Point p);
int getX() {return X;}
int getY() {return Y;}
static void getC()
{coutobject id iscountPendl;}
//静态函数成员,将原例中的getC()改为了static
private:
int X,Y;
static int countP; //静态数据成员引用性说明
};;Point::Point(Point p) {
X=p.X;
Y=p.Y;
countP++;
}
int Point::countP=0;
void main()
{
Point A(4,5);
CoutPoint A,A.getX(),A.getY();
A.getC();
Point B(A);
CoutPoint B,B.getX(),B.getY();
Point::getC();//利用类名引用,输出对象号,不需要用对象名来引用}; 2)访问非静态数
您可能关注的文档
- 2013届高考历史一轮复习课件2.2.18近代社会经济结构的变动和民国时期民族工业曲折发展岳麓版.pptx
- 55173汽车系统动力学基本课件第10章可控悬架.pptx
- 大二下物理化学上phchem4.pptx
- 讲座海绵城市建设技术应用140.pptx
- 勘查技术与工程专业介绍重磁-2013.pptx
- 空气动力学-2第1章.pptx
- 精密机械课件第五章.pptx
- 山东省青岛市平度实验2026届数学八年级第一学期期末监测模拟试题含解析.doc
- 2026届江苏省沛县九年级数学第一学期期末学业水平测试试题含解析.doc
- 湖南省株洲市荷塘区第五中学2026届数学九年级第一学期期末调研试题含解析.doc
- 2026届湖北省宜城市数学九年级第一学期期末统考试题含解析.doc
- 安徽省阜阳市民族中学2026届数学八上期末学业水平测试试题含解析.doc
- 血站质管科培训课件.ppt
- 山东省潍坊市青州市2026届八年级数学第一学期期末学业质量监测模拟试题含解析.doc
- (茅台酒)白酒酿造工职业技能认定-制曲制酒考试题库含完整答案(名校卷).docx
- (茅台酒)白酒酿造工职业技能认定-制曲制酒考试题库及完整答案(易错题).docx
- 山东省无棣县联考2026届数学八年级第一学期期末调研模拟试题含解析.doc
- (茅台酒)白酒酿造工职业技能认定-制曲制酒考试题库及参考答案(预热题).docx
- (茅台酒)白酒酿造工职业技能认定-制曲制酒考试题库及参考答案【预热题】.docx
- (茅台酒)白酒酿造工职业技能认定-制曲制酒考试题库及参考答案【黄金题型】.docx
最近下载
- 2025-2026学年湘教版数学八(上)期末素养综合测试卷提升卷(含答案).docx VIP
- GB55034-2022 《建筑与市政施工现场安全卫生与职业健康通用规范》.docx VIP
- 2025-2026学年湘教版数学八(上)期末素养综合测试卷基础卷(含答案).docx VIP
- T_CCAATB 0011—2021_民用机场遗失物品管理.pdf VIP
- 劳务队伍的选择与防范预案.docx VIP
- 铁矿石外贸合同中英对照(20210306154620).pdf VIP
- esc eas 血脂指南解读.pptx VIP
- 《软件工程》期末考试复习题库(含答案).docx VIP
- 储罐现场吊装施工方案.docx VIP
- 大学同学眼中的许嵩.doc VIP
原创力文档


文档评论(0)