簡體   English   中英

C ++中可變數量的變量

[英]variable number of variables in C++

是否可以生成可變數量的變量? 例如,假設我想聲明一些未知數量的整數,是否有辦法讓代碼自動聲明

int n1;
int n2;
.
.
.
int nx;

其中x是所需變量的最終數量。

需要這個的潛在應用程序將讀取具有未知行數和列數的.csv文件。 現在,我認為在沒有可變數量的變量的情況下做到這一點的唯一方法是2D向量,或者編碼在更多列中,而不是可能在程序接收的任何輸入文件中

是。 (更好,更可能!)

int x[100]; //100 variables, not a "variable" number, but maybe useful for you!

int *px = new int[n];// n variables, n is known at runtime;

//best
std::vector<int> ints; //best, recommended!

在這里閱讀std::vector

http://www.cplusplus.com/reference/stl/vector/

另請參見std::list和其他STL容器!


編輯:

對於多維,您可以使用:

//Approach one!
int **pData = new int*[rows]; //newing row pointer
for ( int i = 0 ; i < rows ; i++ )
     pData[i] = new int[cols]; //newing column pointers

//don't forget to delete this after you're done!
for ( int i = 0 ; i < rows ; i++ )
     delete [] pData[i]; //deleting column pointers
delete [] pData; //deleting row pointer

//Approach two
vector<vector<int>> data;

使用適合你的任何東西,簡化你的問題!

使用其中之一

std:vector<int> n

要么

int* n = new int[x];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM