当前位置:首页 > 通信资讯 > 正文

c++ const 对象(const对象)

本文实例讲述了C++实现动态分配const对象的方法。分享给大家供大家参考。具体方法分析如下:

一、创建

在C++中,允许动态创建const对象,格式如下:

?
1 const int *p = new const int(128);

与其他常量一样,动态创建的const对象必须在创建时初始化,并且初始化后,其值不能改变。

二、删除

尽管不能改变const对象的值,但可以删除动态创建的const对象,格式如下:

?
1 delete p;

这个和普通的对象一样,可以对其进行删除操作。

三、应用场景举例

1、加载配置文件

从配置文件读入的数据可以用来初始化const对象,供后续程序使用。

伪代码如下:

?
1 2 3 4 5 6 7 8 9 10 11 int num; ... //读取配置文件,并将配置数据填充到num const int *pNum = new const int(num); // 用num初始化const对象 cout<<*pNum<<endl; //使用const对象 ... delete pNum;

2、创建数组

当数组的大小依赖于某些动态因素时(比如配置文件等),可以考虑用const对象。

伪代码如下:

?
1 2 3 4 5 6 7 8 9 10 11 int num; ... //获取num的值 const int *pNum = new const int(num); // 用num初始化const对象 unsigned char _data[*pNum]; //创建数组 ... delete pNum

示例代码如下:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #include <iostream> using namespace std; int main() { int num; cin>>num; const int *pNum = new const int(num); int arr[*pNum]; for(int i=0;i<*pNum;++i) arr[i] = i; for(int i=0;i<*pNum;++i) cout<<arr[i]<<" "; cout<<endl; return 0; }

当然还有很多其它场景,这里暂时记录了这些,方便以后查阅。

希望本文所述对大家的C++程序设计有所帮助。

如果您对该产品感兴趣,请填写办理(客服微信:xiaoxiongyidong)

为您推荐:

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。