私は基本的にC++の男ですが、現在C#を学んでいます。 配列の宣言中に、c#とは違った型の後に角括弧が必要であることがわかりました。 C#言語仕様がこのような理由はありますか?c#配列宣言構文vs C++配列宣言構文
答えて
私は考えることができる唯一の正当な理由はこの構造でリスト1とリスト2の種類を明確に示すようにすることです:C#では
を:
int[] list1, list2;
リスト2は、int型の配列です。 C++で
:
int list1[], list2;
リスト2はintです。
ここでは可読性が重要です。
これはC++ではコンパイルされませんが、 "int list1 []、list2"が必要です。 –
@DaveDoknjas true、私の答えを編集します –
これは一貫性のためです(読みやすくするため)。
C#変数宣言では、完全な型指定は常に変数名の左側にあります。
C/C++では、型指定の一部が変数名の右側にあることがありますが、これは矛盾しています。
=、C++で=、の右側に型指定の一部の例を教えてください。 – ZoomIn
@ZoomIn申し訳ありません、申し訳ありません、 "=" ...私は私の投稿を修正しました。 –
- 1. cの文字列配列宣言
- 2. 配列宣言文字列を書く
- 3. C++/CLI Generic :: Dictionary宣言構文
- 4. GNU C++での文字列配列の宣言
- 5. グローバル配列の宣言と使用c#
- 6. C charの配列を宣言する*
- 7. Cで文字配列へのポインタを宣言するには?
- 8. C++文字列変数宣言
- 9. 配列の型宣言
- 10. C言語で巨大な配列をローカルに宣言する
- 11. 問題を引き起こす文字列配列の宣言
- 12. 文字列の配列を宣言する
- 13. Objective-Cのスタックベースの配列宣言ですか? Objective-Cで
- 14. 配列サイズの宣言Cの場合の違いやC++
- 15. C++の宣言構文に関するトリック質問
- 16. C++のアクセス、この中の新機能宣言子構文
- 17. 構文型クラスMonadStateの宣言
- 18. 宣言的な構文のextjsドキュメント
- 19. template宣言クラスメソッド定義構文
- 20. mysqlの構文を宣言します
- 21. Cの構造体の前方宣言?
- 22. 構造体をC言語で宣言せずに宣言する
- 23. 文字配列宣言時にバッファオーバーフローが発生する
- 24. Objective-Cで2D配列を宣言するには?
- 25. C++ - 関数内で配列を宣言する
- 26. 整数配列へのポインタの宣言C++
- 27. ポインタの配列にアクセスするためのC++ポインタ宣言
- 28. 宣言のないポインタのC++多次元配列
- 29. Objective Cのint []配列の宣言、プロパティ、合成、実装
- 30. C#で配列を宣言して使用する方法
私はC++の人ですが、私はC配列の宣言構文が直感的ではないことが分かります。 – juanchopanza
@juanchopanza ya、私は同意しますが、今ではそれを使用しています:) – ZoomIn
実際、C++の実際の型は 'T [N]'(括弧は基底型の直後)であり、違って、これは実際に少し矛盾しています。 –