この質問から次のことを学んだ後、これが頭に浮かびました。
where T : struct
私たちC#開発者は、C#の基本をすべて知っています。宣言、条件、ループ、演算子などを意味します。
私たちの中には、ジェネリックス、匿名型、ラムダ、LINQ、...などをマスターした人もいます。
しかし、C#ファン、中毒者、専門家でさえほとんど知らないC#の最も隠された機能やトリックは何ですか?
これまでに明らかにされた機能は次のとおりです。
キーワード
yield
マイケル・スタムvar
マイケル・スタムusing()
ココスの声明readonly
ココス_as
マイク・ストーンas
/ EdSwangrenis
作as
/is
(改善)Rocketpantsによるdefault
deathofratsによってglobal::
pzycomanによるusing()
AlexCuseによるブロックvolatile
JakubŠturc _extern alias
JakubŠturc _
属性
DefaultValueAttribute
マイケル・スタムObsoleteAttribute
DannySmurf _DebuggerDisplayAttribute
StuによるDebuggerBrowsable
とbdukesDebuggerStepThrough
によってThreadStaticAttribute
marxidadによるFlagsAttribute
マーティン・クラークConditionalAttribute
AndrewBurnsによる
構文
??
(coalesce nulls)kokosによる演算子- NickBerardiによる番号フラグ
where T:new
LarsMæhlum著- キースによる暗黙のジェネリック
- キースによる1パラメーターラムダ
- キースによる自動車の特性
- キースによる名前空間エイリアス
- Patrickによる@付きの逐語的な文字列リテラル
enum
lfoustによる値- @variablenames by marxidad
event
marxidadによるオペレーター- Portmanによる文字列ブラケットのフォーマット
- xanadontによるプロパティアクセサーアクセシビリティ修飾子
- JasonS
?:
による条件付き(三項)演算子( ) checked
とBinojAntonyunchecked
によるオペレーターimplicit and explicit
Floryによるオペレーター
言語機能
- BradBarkerによるNullable型
- キースによる匿名タイプ
__makeref __reftype __refvalue
ユダ・ヒマンゴ- lomaxxによるオブジェクト初期化子
- ダコタのDavidによる文字列のフォーマット
- marxidadによる拡張メソッド
partial
ジョンエリクソンによる方法- JohnAsbeckによるプリプロセッサディレクティブ
DEBUG
RobertDurginによるプリプロセッサディレクティブ- SefBknによる演算子のオーバーロード
- シャクリットによる型推論
- RobGoughによって次のレベルに引き上げられたブール演算子
- 値型変数をRomanBoikoによるボクシングなしのインターフェースとして渡す
- RomanBoikoによって宣言された変数タイプをプログラムで決定します
- クリスによる静的コンストラクタ
- roosteronacidによるLINQを使用したより簡単な/凝縮されたORMマッピング
__arglist
ザックボウリング
VisualStudioの機能
- Himadriによるエディターでテキストのブロックを選択します
- DannySmurfによるスニペット
フレームワーク
TransactionScope
KiwiBastard _DependantTransaction
KiwiBastard _Nullable<T>
IainMHによるMutex
ディアジオ_System.IO.Path
ageektrappedによってWeakReference
フアン・マヌエル
メソッドとプロパティ
String.IsNullOrEmpty()
KiwiBastardによる方法List.ForEach()
KiwiBastardによる方法BeginInvoke()
、ウィルディーンEndInvoke()
による方法Nullable<T>.HasValue
とRismoNullable<T>.Value
によるプロパティGetValueOrDefault
ジョン・シーハンによる方法
ヒントとコツ
- AndreasHRNilssonによるイベントハンドラーの優れた方法
- ジョンによる大文字の比較
- dpによる反映なしで匿名タイプにアクセスする
- Willによってコレクションプロパティを遅延インスタンス化する簡単な方法
- JavaScriptのような匿名インライン-roosteronacidによる関数
他の
- kokosによるnetmodules
- DuncanSmartによるLINQBridge
- JoelCoehoornによる並列拡張