問題タブ [using-statement]

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.

0 投票する
4 に答える
1297 参照

.net - ブロックとリターンを使用する.NET。キーワード

私がこれを言うとき

何かを返すのでusingブロックの機能をバイパスし、usingブロックを終了する前にメソッドが終了するので、usingブロックはその目的を果たせず、リソースを破棄しないと思います。

これは正しいです?

0 投票する
6 に答える
611 参照

c# - ステートメントの質問の使用

2 つの質問があります。

1) 接続では常に using ステートメントを使用する必要がありますか? それで、接続でそれを使用してから、接続内のリーダーで別のものを使用しますか? したがって、2 つの using ステートメントを使用します。

2) 接続で using ステートメントを使用し、接続で返されるリーダーも使用するとします。したがって、2 つの using ステートメントがあります。Try{}Finally{} ブロックを 2 つ作成しますか、それとも 1 つだけ作成しますか?

ありがとう!

0 投票する
3 に答える
648 参照

c# - .NET/C# - 'using' ステートメントによるオブジェクトの破棄

次のようなメソッドがあるとします。

これでも「ms」オブジェクトは破棄されますか? おそらく、ステートメントブロックが終了する前に何かが返されたため、疑問があります。

ありがとう、AJ。

0 投票する
4 に答える
4876 参照

c++ - インクルードと C++ での名前空間の使用

を使用coutするには、両方を指定する必要があります。

どこでcout定義されていますか?でiostream、正しいですか?それで、それiostream自体が名前空間にあるということstdですか?

の使用に関する両方のステートメントの意味は何coutですか?

なぜ両方を含める必要があるのか​​ 混乱しています。

0 投票する
2 に答える
230 参照

.net - 新しいクラスの上にデフォルトで不要な名前空間が表示されないようにする方法

Visual Studio 2008 C# で新しいクラスを作成すると、デフォルトで次の名前空間が表示され、毎回手動で削除します。プロジェクトで作成されたすべての新しいクラスに表示されないように、これらの不要な名前空間を削除できる設定/フォルダー テンプレートはありますか?

System.Collections.Generic の使用; System.Linq を使用します。System.Text を使用します。

0 投票する
5 に答える
8298 参照

c# - C#usingステートメントはtry / finalを実行しますか?

次のコードがあるとします。

C#のドキュメントには、usingステートメントを使用するとスコープ内のオブジェクトが破棄されると記載されており、try/finally句を使用する必要がないことが示唆されている場所をいくつか見ました。

私は通常、接続をtry / finallyで囲み、finally節で常に接続を閉じます。上記のコードを考えると、例外が発生した場合に接続が閉じられると想定するのは合理的ですか?

0 投票する
3 に答える
43153 参照

c++ - イテレータの使い方は?

2点間の距離を計算しようとしています。C ++のベクトルに格納した2つのポイント:(0,0)と(1,1)。

私は次のように結果を得ることになっています

しかし、私が得た実際の結果は

ベクトルでイテレータを使用する方法に問題があると思います。この問題を解決するにはどうすればよいですか?

以下のコードを投稿しました。

0 投票する
5 に答える
4094 参照

c++ - '#include'および'using'ステートメントをヘッダーファイルと実装ファイル(C ++)の両方で繰り返す必要がありますか?

私はC++にかなり慣れていませんが、#includeステートメントは基本的に#includedファイルの内容をそのステートメントの場所にダンプするだけであると理解しています。つまり、ヘッダーファイルに多数の「#include」および「using」ステートメントがある場合、実装ファイルはヘッダーファイルを#includeするだけで済み、コンパイラは他のステートメントを繰り返さなくてもかまいません。 。

でも人はどうですか?

私の主な懸念は、「#include」、「using」、および「typedef」(今では考えている)ステートメントを繰り返さないと、その情報が使用されているファイルから削除されることです。混乱を招く可能性があります。

小さなプロジェクトに取り組んでいて、実際には何の問題も起こらないのですが、より多くの人が取り組んでいる大きなプロジェクトでは、それが重大な問題になる可能性があると想像できます。

次に例を示します。

更新:「Unit」の関数プロトタイプには、戻り型とパラメーターの中にstring、ostream、StringSetが含まれています-実装ファイルでのみ使用されるヘッダーファイルには何も含めていません。

0 投票する
6 に答える
2552 参照

c# - 使い捨て、ブロックの使用と試行/キャッチ

今日メンタルブロックを持っているので、私の論理が混乱していないことを確認する手が必要です。

従来、私は次のようなファイルI/Oを実行していました。

ただし、これはあまりエレガントではありません。

理想的には、usingブロックを使用してファイルストリームを破棄したいのですが、使用とtry/catchの相乗効果についてはよくわかりません。

これが私が上記を実装したい方法です:

ただし、usingブロック内からの(スローされた例外による)時期尚早な終了では、usingブロックが実行を完了してそのオブジェクトをクリーンアップできない可能性があるのではないかと心配しています。私はただの妄想ですか、それともこれは実際に私が意図したとおりに機能しますか?

0 投票する
2 に答える
690 参照

c# - C#、奇妙な最適化

コンパイルしたC#コードを読み込もうとしています。

これは私のコードです:

だが!

使用法がこれに変換されることは誰もが知っています:

(OleDbCommandは参照型であるため)。

しかし、アセンブリ(.NET 2.0でコンパイル)を逆コンパイルすると、Resharperで次のようになります。

私はこの行について話している:if ((insertCommand == null) != null)

insertCommandがnullだとしましょう。次に、最初の部分がtrueを返します。(true != null)を返しますtrue。それで、処分はまだスキップされますか?奇妙な、非常に奇妙な。

これをVisualStudioに貼り付けると、Resharperはすでに警告しています:式は常にtrueです...

ありがとう!

-クリストフ