下载此文档

C++读书笔记.docx


文档分类:文学/艺术/军事/历史 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
C++中的指针用法汇集2011-04-1909:19我国IT实验室我国IT实验室我要评论(1)字号:T|T大伙都认为,C++语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上。所以,说指针是C++语言的灵魂,一点都不为过。那么,就让我们一来看C++中指针的用法吧!AD:在C++中,指针用得比较多,对于里面众多的指针用法,不免弄得有些糊涂,自从我从图书馆里借到一本谭浩强教授主编的《C++面向对象程序设计》后,才帮我理清了思路。现把部分内容展现给大伙,希望对大伙有所帮助。C++程序设计重要基础就是类和对象,对象指针是很重要的一部分,包括指向对象的指针、指向对象成员的指针、this指针、指向对象的常指针、指向常对象的指针等。1、指向对象的指针定义:对象空间的起始地址就是对象的指针。说明:在建立对象时,编译系统就为每个对象分配一定的存储空间以存放其成员,不过注意,在通常情况下不同对象的数据存储单元中存放的数据成员是不相同,而不同对象的函数代码却是相同的,也就是说,它们的函数代码是共享的。这时我们可以定义一个指针变量用来存放对象的指针。定义指向类对象的指针变量的通常形式是:类名*对象指针名;如对于与个Time类对象,我们可以有:Time t; Time *p; p=&t; 我们就可以通过对象指针访问对象和对象的成员,假如所定义的类中有数据成员hour、minute、sec,成员函数有gettime(),则(*p).hour即为p指向对象中的hour成员,(*p).gettime()即为p指向对象中的成员函数gettime(),()也可以用如下形式:p->hour和p->gettime()和上面是等价的。2、指向对象成员的指针(1)指向对象数据成员的指针在C中我们学过指向普通变量的指针变量,在C++中定义指向对象数据成员的指针变量的方法和定义指向普通变量的指针变量方法相同,其通常形式为:数据类型名*指针变量名;如:int *p; p=&; //将对象t的数据成员hour的地址赋给p, (2)指向对象成员函数的指针定义指向对象成员函数的指针变量和定义指向普通函数的指针变量不同。在定义指向普通函数的指针变量时我们可以这样定义:void (*p)(); p=fun; (*p)(); //调用fun函数 然而编译系统要求在将函数地址赋给指针变量时必需满足三个条件:函数参数类型及个数要匹配函数返回值的类型要匹配所属的类要匹配显然在上面的p与类是无关的。为了满足第三条,我们可以为指针指定类,故定义指向对象成员函数的指针变量通常形式为:数据类型(类名::*指针变量名)(参数表列);可以让指针指向公用的成员函数,如:void (Time::*p)(); //定义指向Time类对象成员函数的指针变量p p=&Time::gettime; //把Time类的公用成员函数gettime()地址赋给指针变量p (t.*p)(); //调用Time类对象t的成员函数gettime() 注意:因为成员函数不存放在对象空间中,多个同类对象共享此成员函数代码,所以在将成员函数的入口地址赋给指针变量是应写成:指向对象成员函数的指针变量=&类名::成员函数名;在成员函数名后面没有"()",如果写成p=&Time::

C++读书笔记 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人书犹药也
  • 文件大小19 KB
  • 时间2020-03-02