我基本上是C++的人,現在正在學習c#。 雖然數組聲明我發現c#期望類型不像c,C++之後的方括號。 有沒有什麼理由c#語言規範是這樣呢?c#數組聲明語法vs C++數組聲明語法
回答
唯一的好理由,我能想到的是使類型列表1和列表2中的這種結構清楚地表明:
在C#:
int[] list1, list2;
列表2是int數組。
在C++:
int list1[], list2;
list2中是一個int。
可讀性在這裏很關鍵。
儘管在C++中不能編譯,但你需要「int list1 [],list2」。 – 2013-05-07 14:21:36
@DaveDoknjas true,我會編輯我的答案 – 2013-05-07 14:23:32
這也是爲了一致性(這有助於可讀性)。
在C#變量聲明中,完整類型說明始終位於變量名的左側。
在C/C++中,有時類型規範的一部分位於變量名的右側,這是不一致的。
你能給我舉一個= C++右邊的類型說明的例子 – ZoomIn 2013-05-07 08:54:09
@ZoomIn對不起,我打算說「變量名」,而不是「=」 ...我糾正了我的帖子。 – 2013-05-07 09:37:22
- 1. C++函數聲明語法
- 2. C#聲明數組
- 3. Java數組聲明的語法差異?
- 4. 錯誤數組聲明語法
- 5. 聲明整數時的C++語法
- 6. C++到C#數組聲明
- 7. 語法錯誤:在'之前'缺少']';'數組聲明錯誤C
- 8. ANSI-C語法 - 數組聲明如[*]等alii
- 9. C++語法混淆 - 聲明無符號字符數組
- 10. 語法:函數聲明
- 11. C++指針數組聲明
- 12. C#隱式數組聲明
- 13. C#來聲明數組
- 14. C-聲明char數組
- 15. C++數組聲明問題
- 16. C++在新函數聲明器中訪問此語法語法
- 17. typedef聲明語法
- 18. mumps語法聲明
- 19. C++ * VS和函數聲明
- 20. 目標C類聲明的語法
- 21. C++/CLI通用::字典聲明語法
- 22. C++指針Defererence聲明語法
- 23. 聲明一組C++
- 24. 數組定義vs數組聲明
- 25. 數組聲明
- 26. java聲明數組基於If語句
- 27. 在if語句中聲明數組
- 28. C#語言枚舉聲明
- 29. C語言入門:函數聲明
- 30. C++ - 聲明數組內函數
我也是一個C++的人,但我必須說我發現C數組聲明語法違反直覺。 – juanchopanza 2013-05-07 07:11:16
@juanchopanza雅,我同意,但現在用它:) – ZoomIn 2013-05-07 09:45:22
事實上,C++中的實際類型也是'T [N]'(括號直接在基類型之後),它只是必須寫入的聲明不同的是,這確實有點矛盾。 – 2013-05-07 12:41:18