免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 11330 | 回复: 32
打印 上一主题 下一主题

[C++] c++中this指针到底指向什么 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-07-25 20:33 |只看该作者 |倒序浏览
c++中的this指针是一个指向正在被某个成员函数操作的对象的指针,它指向该类中的所有函数和属性吗?但是好象不志向该类中的静态成员啊 ,我对这些问题不是很清楚,希望大哥们给小弟解释下  
       谢谢了 !!!!!!!!!!!!

论坛徽章:
0
2 [报告]
发表于 2007-07-25 20:41 |只看该作者
指向 Object 本身

论坛徽章:
0
3 [报告]
发表于 2007-07-25 20:45 |只看该作者
比较复杂,参考一下 深度探索C++对象模型 一书

论坛徽章:
0
4 [报告]
发表于 2007-07-25 20:49 |只看该作者
this指向调用成员函数的对象
静态成员是属于类的,它不专属于任何一个具体的对象

原帖由 gaozhongshan 于 2007-7-25 20:33 发表
c++中的this指针是一个指向正在被某个成员函数操作的对象的指针,它指向该类中的所有函数和属性吗?但是好象不志向该类中的静态成员啊 ,我对这些问题不是很清楚,希望大哥们给小弟解释下  
       谢谢了 !! ...

论坛徽章:
0
5 [报告]
发表于 2007-07-25 21:01 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
6 [报告]
发表于 2007-07-25 21:04 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
7 [报告]
发表于 2007-07-25 21:17 |只看该作者
原帖由 jamesr 于 2007-7-25 21:04 发表


说的不确切,静态成员是任意一个具体对象的成员,但只有一个内存空间。



ypxing 说得正确

论坛徽章:
0
8 [报告]
发表于 2007-07-26 01:36 |只看该作者
支持ypxing的说法

论坛徽章:
0
9 [报告]
发表于 2007-07-26 01:37 |只看该作者
this指向当前对象
*this就是对象本身

论坛徽章:
0
10 [报告]
发表于 2007-07-26 09:14 |只看该作者
#include <iostream>
class A
{
private:
    static const int onlyone=0;
    int many;
public:
    A(int a):many(a){};
    void hello(){std::cout<<this<<"\t"<<onlyone<<"\t"<<many<<" hello!"<<std::endl;};
    void world(){std::cout<<this<<"\t"<<this->onlyone<<"\t"<<this->many<<" world!"<<std::endl;};
};

int main()
{
    A a(1),b(2);
    a.hello();
    a.world();
    b.hello();
    b.world();
    return 0;
}

中的static const int onlyone=0;在类里面初始化是不是在类里初始化的成员一定要是静态的并且是常量啊 除了这以外的都不能在类里面初始化,静态的属于类 如果定义成常量就不可以修改了是这个原因吗??
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP