問題タブ [out-parameters]
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++ - out パラメータとして何かを返す正しい用語は何ですか?
この質問が話題になることを願っています。
私はコードレビューを行っていて、次の機能に出くわしました:
この関数は、out パラメーターを使用してクラスの値xxx
を取得するために使用されます。yyy
コメント (後で自動ドキュメンテーションに使用されます) は次のように述べています。
... この関数は参照によって [xxx] と [yyy] を返します...
明らかに、関数は成功または失敗を示すブール値を返します。したがって、上記の文は言い換える必要があります。しかし、どのように?out パラメーターを使用して、いわば何かを返すこと、つまり、参照によって渡された引数を入力することの正しい用語は (もしあれば) ?
この質問は、C++ 固有ではないため、言語に依存しないタグが付けられています。ただし、例が C++ であるため、C++ のタグも付けられています。
java - OUT パラメータを使用した Java MyBatis ストアド プロシージャ コール
最初の質問: 注釈付きの結果セットではなく、1 つの OUT パラメータを返そうとしています。まず、それは可能ですか?もしそうなら、どうやってこれを行うでしょうか?
MyBatis: 3.0.6
データベース: SQL Server 2008
UserDAO でのメソッド呼び出しの構文の例を次に示します。
すべての「保存」手順からメッセージを返しているため、ユーザーに応答を返すことができます:「ユーザーは正常に保存されました」、「ユーザーの保存中にエラーが発生しました」、「このユーザーを保存する権限がありません」など。結果セットを返すことで問題が解決することはわかっていますが、すべての手順を変更したくないだけです!
2 番目の質問:複数の OUT パラメータから入力された「SaveProcedureResponse」を返すことは可能ですか? 例えば:
Bean は次のようになります。
ありがとう!
oracle - PL / SQLでOUTパラメータに値を割り当てる必要があるというのは本当ですか?
これは、呼び出されると正常に機能します。
c# - 条件付きフローでの out パラメータの使用と CA1002 fxcop エラー
xml から複数のノードと属性を解析している xml 解析コードがあります。短絡を使用すると、肯定的な場合にのみ処理を続行したいので、コード内で if を回避できます。しかし、使用法としてパラメーターの fxcop エラーが発生CA1002
しています。
どうすれば fxcorp エラーを取り除くことができますか?
c# - C#でのパラメーターの名前付けと混合:出力パラメーターにも名前を付ける必要があるのはなぜですか?
短いバージョン:引数に続く名前付き引数out
はコンパイラエラーを出しますが、言語仕様でこの動作のサポートを見つけることができません。
ロングバージョン:
私は3つのパラメーターのオーバーロードを使用していますが、コードを明確にするためにパラメーターにEnum.TryParse<TEnum>
名前を付けたいと思います。次のような呼び出しです。ignoreCase
ブール値の意味が不明確になります(この方法が知られていない場合1)。したがって、私は使用したいと思います:
ただし、コンパイラはこれをエラーとして報告します。
名前付き引数'ignoreCase'は、位置引数がすでに指定されているパラメーターを指定します
IDEはignoreCase
パラメータを強調表示します。.NET 4を対象とするVS2010、および4または4.5を対象とするVS11 Betaは、すべて同じ結果をもたらします。いずれの場合も、out
パラメーターに名前を付けるとエラーが削除されます。
フレームワークとアセンブリの両方から、さまざまな方法(ジェネリックスの回避を含む)2でこれを試しました。常に同じ結果です。out
パラメーターの後に名前付きパラメーターを指定すると、エラーが発生します。
このエラーの理由はわかりません。§7.5.1C #言語仕様の引数リスト:バージョン4.0out
では、名前付きパラメーターが後に続くとエラーが発生する理由は提供されていないようです。エラーのテキストは、バグとしての解釈をサポートしているようです。に有効な一致となる可能性のある位置引数はありませんignoreCase
。
仕様の読み方が間違っていますか?それとも、これはコンパイラのバグですか?
C#7.2アップデート
C#7.2で呼び出しが解除された場合、すべての名前付き引数に対するこの制限は、位置引数に従う必要があります。
https://docs.microsoft.com/en-gb/dotnet/csharp/whats-new/csharp-7-2#non-trailing-named-argumentsを参照してください。
1enum
したがって、パラメータを優先するためのフレームワーク設計ガイドラインのアドバイス。
2例:与えられた:
この呼び出しでも、out
パラメーターに名前が付けられていない限り、名前付きパラメーターで同じエラーが発生します。
sql-server-2008 - ストアドプロシージャの出力パラメータはnullを返します
例外はスローされませんが、null値が返されます。SSMSで正常に動作しているプロシージャでも
sql-server - ストアド プロシージャで RAISERROR を使用してパラメータを作成するにはどうすればよいですか?
MSSQL で RAISERROR を使用してパラメータを作成するにはどうすればよいですか?
たとえば、この id ストアド プロシージャは次のとおりです。
mysql - cfloop でストアド プロシージャを呼び出して、Coldfusion で動的出力パラメータを出力することはできますか?
今夜の最後の質問です。まだ Coldfusion8 と MySQL を使用しています。
それぞれ価格 A、B、C の製品を含むテーブルがあります。すべての価格 (A_min、A_max、B_min、B_max、C_min、C_max) で A、B、C の最小値と最大値を取得する必要があります。
ストアド プロシージャを作成し、次のように A、B、C をループすると考えました。
したがって、A、B、および C に対してこれを 3 回実行し、ループから変数 A_min、A_max、B_min... を取得するというアイデアがありました。
しかし、MySQL 内で次のように宣言している out-parameters に問題があります。
コールドフュージョン エラーは次のように述べています。
質問:
出力パラメータに MySQL 内部と同じ名前を付ける必要がありますか? それとも正しい順序で十分ですか?
さらに重要なことに、このように出力変数を動的に設定できますか? そうでない場合、ストアド プロシージャを 3 回別々に呼び出す以外に方法はありますか?
c# - 「out」パラメータを無視することは可能ですか?
こんな方法もあるなんて…
theOutParameter
メソッドを呼び出すとき、メソッドへの呼び出しがどのように見えるかに興味がない場合はどうなりますか? bool
値に興味がない場合にメソッドの out パラメータが処理されるように、 new をインスタンス化するのは少し過剰に思えます。
php - PHP-MySQLはストアドプロシージャからoutパラメータの値を取得します
を使用してPHPからMySQLストアドプロシージャを呼び出しましたmysqli
。これには1つのoutパラメーターがあります。
ここで、@idはoutパラメーターです。次に、次のクエリを実行して、outパラメータの値を取得します。
の出力var_dump
は次のとおりです。
そこで、今は取得できないの値を取得したいと思います@id
。試し$row[0]->{@id}
ましたが、次のエラーが発生しました。
PHPの致命的なエラー:stdClass型のオブジェクトを配列として使用できません