我已經使用以下代碼根據用戶的輸入上用戶的輸入定義高速緩存大小
int size=1024;
Console::WriteLine("Select the Cache Size.\n a. 1 Kb \n b. 2 Kb \n c. 4 Kb \n d. 8 Kb\n");
String^ CACHE_SIZEoption = Console::ReadLine();
//Char wh=CACHE_SIZEoption->ToChar();
switch(CACHE_SIZEoption[0])
{case 'a':{
size= 1024;
break;}
case 'b':{
size=2048;
break;}
case 'c':{size= 4096;
break;}
case 'd':{size=8192;
break;}
default: {Console::WriteLine("Wrong Input");}
}
#define CACHE_SIZE size
long tags[CACHE_SIZE];
是在最後一行中產生的誤差來設置緩存大小,「長標籤[CACHE_SIZE]」
expected constant expression
cannot allocate an array of constant size 0
請告訴我們,如果有另一種方式做這件事情
我已經使用此std :: vector標籤[size];給錯誤錯誤C2039:'vector':不是'std'的成員 –
2013-05-03 12:02:30
@HanyaIdrees你需要'#include'並且注意它是'(size)'而不是'[size]'。您將大小傳遞給它的構造函數。 –
2013-05-03 12:03:40
好吧,如何將大小傳遞給它的構造函數。 – 2013-05-03 12:08:51