Re: [語法] C++陣列與指標??

看板C_and_CPP (C/C++)作者 (撫星)時間16年前 (2009/03/22 22:45), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《StarTouching (撫星)》之銘言: : 在C++裡 : 是否可以跟C一樣, : 寫一個function參數型態是指標, : 但呼叫時卻丟個陣列? : 例如 : void func(int *a); : int main: : a[] = {1,2,3,4,5}; : func(a); : 我試過好像不行, : 那是否可以用形態轉換語法做到呢? 加入const後好像就不行 VC++可能出現這樣的訊息在下面的程式 無法將參數 1 從 'int [10]' 轉換成 'int *const ' void func(int *const a); int a[10]; for(int i=0;i<10;i++) std::cin >> a[i]; func(a); int n, *b; std::cin >> n; b = new int[n]; for(int i=0;i<n;i++) std::cin >> b[i]; func(b); 我希望我的func可以應付一般陣列和動態記憶體, C++有辦法做到嗎? 還是一定要改成vector? 抱歉 我比較習慣寫C, 所以會有這方面的疑惑。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.120.216.35

03/22 23:26, , 1F
一般陣列也不用加const吧?
03/22 23:26, 1F

03/22 23:27, , 2F
不加const應該就沒事
03/22 23:27, 2F

03/22 23:30, , 3F
void func( int a[]);
03/22 23:30, 3F
文章代碼(AID): #19naxlCB (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #19naxlCB (C_and_CPP)