問題タブ [using]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C#でC++スタイルのデストラクタを実行するには?
Dispose
経由の関数を持つ C# クラスがありますIDisposable
。ブロック内で使用することを意図しているusing
ため、処理する高価なリソースをすぐに解放できます。
問題は、 が呼び出される前に例外がスローされたときにバグが発生し、プログラマーがorDispose
の使用を怠ったことです。using
finally
C++ では、これについて心配する必要はありませんでした。クラスのデストラクタへの呼び出しは、オブジェクトのスコープの最後に自動的に挿入されます。そのような事態を回避する唯一の方法は、 new 演算子を使用してオブジェクトをポインターの背後に保持することですが、プログラマーにとって余分な作業が必要になるのは、using
.
using
ブロックをC#で自動的に使用する方法はありますか?
どうもありがとう。
アップデート:
ファイナライザーの回答を受け入れない理由を説明したいと思います。これらの答えは技術的には正しいですが、C++ スタイルのデストラクタではありません。
これが私が見つけたバグであり、本質的なものに縮小されています...
使用FXCop
することは素晴らしい提案ですが、それが私の唯一の答えである場合、私の質問は C# の人々への嘆願になるか、C++ を使用する必要があります。ネストされた 20 の using ステートメントはありますか?
.net - 「using」キーワードとの .Net 名前空間の競合をどのように解決しますか?
ここに問題があります。複数のアセンブリを含め、コード ファイルの先頭に「using namespaceX」を追加します。クラスを作成するか、
複数の名前空間で定義されているシンボルを使用する必要があります。System.Windows.Controls.Image
System.Drawing.Image
ここで、完全修飾名を使用しない限り、上部の正しい「使用」宣言にもかかわらず、あいまいさが原因で crib/build エラーが発生します。ここから出る方法は何ですか?
(別のナレッジベースの投稿..検索する適切なキーワードがわからなかったため、約 10 分の検索の後に答えを見つけました)
c# - ネストされた「使用」よりも優れた決定論的廃棄パターンはありますか?
C#では、管理されていないリソースを決定論的にクリーンアップする場合は、「using」キーワードを使用できます。しかし、複数の依存オブジェクトの場合、これはさらにネストすることになります。
C ++では、デストラクタを使用して次のように実行できることに慣れています。
これを行うためのC#のより良い方法はありますか?それとも、複数のレベルのネストに固執していますか?
c# - ディレクティブを使用して不要なC#を削除する必要があるのはなぜですか?
たとえば、私はめったに必要ありません:
ただし、デフォルトでは常に存在します。コードに不要なusingディレクティブが含まれている場合、アプリケーションはより多くのメモリを使用すると思います。しかし、他に知っておくべきことはありますか?
また、同じusingディレクティブが1つのファイルだけで使用されている場合と、ほとんど/すべてのファイルで使用されている場合でも、違いはありますか?
編集:この質問は、オブジェクトがスコープ外になったときにそのIDisposable.Disposeメソッドが呼び出されるようにすることでリソースを管理できるように設計された、 usingステートメントと呼ばれる無関係の概念に関するものではないことに注意してください。C#での「使用」の使用を参照してください。
c# - C# の「使用」構文
using は例外をキャッチしますか、それともスローしますか? すなわち
ストリームリーダーが例外をスローした場合、呼び出し元の関数がそれを処理できるように、使用またはスローによってキャッチされますか?
.net - 「using { }」内の Response.Redirect("")
次のコードを想定します。
Response.Redirect() を使用しているブロックから終了すると、すべての接続が破棄されますか?
または、代わりに、破棄を引き起こさない using ブロックを終了する方法はありますか?
編集:処分せずに終了したくありません。機能しない原因となる落とし穴に注意してください。-- もちろん、クラッシュが発生しない限り、すべてのオブジェクトが破棄されることは確かです (難しい方法ですが)。
基本的に「わからない」という回答を受け入れましたが、「わからない」という非常によく調査された回答です。
当面は、Response.Redirect が using ステートメントとコードを中止することを念頭に置くことにします。-- そうでないことが証明されるまで。
wcf - WCFTestClient を使用して単純な WCF Web サービスをテストする WCF エラー
「wcftestclient」を使用して AutoLotWCFService をテストしようとすると、次のエラーが発生します。私は何を間違っていますか?どんな洞察も役に立ちます。これは、インターフェイス コントラクトとサービス内の実装を備えた wshttpbinding を持つ単純な Web サービスです。長いエラー メッセージは次のとおりです。Web.Config ファイルには 2 つのエンドポイントがあります。1 つは Web サービス自体用で、もう 1 つは metaDataExchange 用です。そのすべてはほとんどデフォルトのものです。必要に応じてコードを含めることができます - ここにファイルを添付できないようです。
c# - C# Using ブロックとは何ですか? なぜそれを使用する必要があるのですか?
Using
C# のブロックの目的は何ですか? ローカル変数とどう違うのですか?
c++ - 明示的な名前空間と C++ での「使用」のどちらを好みますか?
C++ 名前空間を使用する場合、次のように明示的に名前を付けることを好みますか?
それとも好きですかusing namespace
:
後者を好む場合は、ファイルまたは関数スコープで usings を宣言しますか?
std
個人的には、それらに明示的に名前を付ける方が好きです。入力するのはより簡単ですが、名前空間 (と など) を組み合わせて使用すると、boost
より読みやすくなります。