标题:指向对象的常指针
只看楼主
hmsabc
Rank: 2
来 自:贵州省兴义市
等 级:论坛游民
帖 子:97
专家分:19
注 册:2010-8-2
结帖率:100%
已结贴  问题点数:20 回复次数:1 
指向对象的常指针
程序代码:
//指向对象的常指针

#include <iostream>
using namespace std;

class Time
{
public:
    void set();
    void show();
    Time();
    Time(int,int,int);
private:
    int hour;
    int minute;
    int second;
};

void Time::set()
{
    cout<<"please enter current time: ";
    cin>>hour>>minute>>second;
}

void Time::show()
{
    cout<<hour<<":"<<minute<<":"<<second<<endl;
}

Time::Time()
{
    hour=0;
    minute=0;
    second=0;
}

Time::Time(int h,int m,int s):hour(h),minute(m),second(s){}

int main()
{
    Time ms1;
    ms1.show();

    Time ms2(12,12,12);
    ms2.show();

    Time ms3;
    ms3.set();
    ms3.show();

    Time * const ptMs=&ms3;          //常指针必须在定义时初始化
    ptMs->set();                     //使用常指针调用类公有成员函数 set
    ptMs->show();                    //使用常指针调用类公有成员函数 show

    return 0;
}
   
/*常指针使得指针变量固定地与一个对象相联系。往往用常指针作为函数的形参,目的是不允许
在函数执行过程中改变指针变量的值,使其始终指向原来的对象。*/
本人初学,对常指针很陌生,哪位仁兄能举个常指针作形参的例子?
搜索更多相关主题的帖子: 常指针 对象 
2010-10-02 09:59
聋眼睛瞎耳朵
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:29
专家分:123
注 册:2010-9-24
得分:14 
常指针的典型应用是数组作为函数的参数。数组名表示常量指针,把它作为函数的参数时,是不允许修改它代表的地址的,否则整个数组的内存区域都可能丢失,不过数组中元素的值可以修改。
用数组名作参数,你应该经常做吧,那就是常指针的应用。
2010-10-02 17:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-321845-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.596335 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved