本文實例講述了C++實現動態分配const對象的方法。分享給大家供大家參考。具體方法分析如下:
一、創建
在C++中,允許動態創建const對象,格式如下:
const int *p = new const int(128);
與其他常量一樣,動態創建的const對象必須在創建時初始化,并且初始化后,其值不能改變。
二、刪除
盡管不能改變const對象的值,但可以刪除動態創建的const對象,格式如下:
delete p;
這個和普通的對象一樣,可以對其進行刪除操作。
三、應用場景舉例
1、加載配置文件
從配置文件讀入的數據可以用來初始化const對象,供后續程序使用。
偽代碼如下:
int num;... //讀取配置文件,并將配置數據填充到numconst int *pNum = new const int(num); // 用num初始化const對象cout<<*pNum<<endl; //使用const對象...delete pNum;
2、創建數組
當數組的大小依賴于某些動態因素時(比如配置文件等),可以考慮用const對象。
偽代碼如下:
int num;... //獲取num的值const int *pNum = new const int(num); // 用num初始化const對象unsigned char _data[*pNum]; //創建數組...delete pNum
示例代碼如下:
#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++程序設計有所幫助。
新聞熱點
疑難解答
圖片精選