文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>关于 指针限定(Pointers Restrictions)

关于 指针限定(Pointers Restrictions)

时间:2010-12-27  来源:fighting86

如果只想用指针传递参数,又或者不想让指针乱动等等,可以使用const修饰符。

或者干脆使用 引用(Reference)——可以认为其相当于type * const,隐去了地址操作,相对安全些。


#include <</span>iostream>

using namespace std;

int main()
{
    const int a = 1; //相当于 int const a = 1,书写习惯而已。

    int b = 2;
    int c = 3;
    int d = 4;
    int e = 10000;

// int * ip = &a; //error: invalid conversion from 'const int*' to 'int*'|

    const int * ipa = &a; //不能通过指针修改 a 的值,只可以修改指针值 ipa。

    int const * ipb = &b; //相当于int const *。

    int * const ipc = &c; //可以通过指针修改 c,但不能修改指针 ipc。

    const int * const ipd = &d; //什么都不能修改!


// *ipa = 11; //error: assignment of read-only location '* ipa'|

    ipa = &e;

// *ipb = 21; //error: assignment of read-only location '* ipb'|

    ipb = &e;

    *ipc = 31;
// ipc = &e; //error: assignment of read-only variable 'ipc'|


// *ipd = 41; //error: assignment of read-only location '*(const int*)ipd'|

// ipd = &e; //error: assignment of read-only variable 'ipd'|


    cout << *ipa << endl;
    cout << *ipb << endl;
    cout << *ipc << endl;
    cout << *ipd << endl;

    return 0;
}


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载