問題タブ [byref]
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.
apache-flex - Actionscript 3 で変数 ByRef を渡す
ActionScript 3 でメソッド ByRef (または out など) にパラメータを渡すことは可能ですか?
クラスの先頭にグローバル スコープの変数がいくつかあり、== null の場合、メソッドはその変数を設定します。
入力する必要がある変数を渡していますが、これまでのところ、ローカルに入力された変数が返され、グローバルにスコープされたバージョンはまだnullのままです。
メソッドに渡される変数はさまざまであるため、メソッドにハードコードして単純に設定することはできません。
c# - IEnumerable<> 内のオブジェクトのプロパティを更新する
私は、特別な種類の実験に使用する必要のあるソフトウェアに取り組んでいます。
実験は以下を使用して実行されます。
1) 「チップ」(基本的には既知の寸法の XY グリッド)。2) 各チップには「電極」が含まれており、チップ上の X 座標と Y 座標、および一意の ID によって識別されます。各電極はサンプルを保持することも、保持しないこともできます。これは単純な bool で示されます (これはバイオセンシング チップです)。
このハードウェアを C# で表すオブジェクトがあります。
実験でハードウェアを使用する必要があります。
1) 「ExperimentStep」オブジェクトを保持する IEnumerable を公開する「実験」があります。2) "ExperimentStep" には、名前と、特に関係する "電極" の限定されたリストが保持されます。
一部の実験ステップは同時に実行でき、電極の「HasSample」プロパティを変更できます。したがって、"ExperimentStep" を実行するときに、最初の "HasSample" プロパティがどのようなものかを常に知っておくとよい場合があります。
これが私の問題です。
「ExperimentStep」に「Electrode」オブジェクトを渡すだけの場合、それらはおそらく値によって渡されます...「ExperimentStep」を実行するたびに、一意の電極への参照を保持する IEnumerable を作成することは可能ですか?そのステップで使用される「電極」のリストは、「HasSample」の最新の値を保持していますか? これにはポインターを使用する必要がありますか?? C++ に関する私の限られた知識から、これはその言語では些細なことだと思います (ほとんどの場合ポインターを使用するため)。しかし、C# についてはまったくわかりません (そして十分な経験がありません)。
linq - IQueryable が linq クエリから作成されると、なぜ「新しい」変数ではないのですか?
私はEntity Frameworkを使用しており、人々のセットを調べるループを持っています.foreachループを使用すると、各人の住所のクエリが作成されます。各アドレス クエリが作成されると、ツリービューのノードに追加され、後で使用できます (子ノードにデータを入力するため)。
さて、アプリの実行時に私が見つけた問題は、すべてのクエリが作成された最後のクエリ、つまりループの最後の反復であることです。これは、ループの最初の繰り返しで addressQuery が作成され、その後の各クエリで上書きされるようなものです。この結果、ツリー ノード内のすべてのアドレス クエリが、最後に作成されたクエリへの参照であるようなものになります (?)。
次のように、静的クラスを使用してアドレスクエリを生成し、それを各 TreeNode に渡すことで問題を解決できることをさらに調査します。
私が持っている質問は、私がこの行動に困惑していることです. 静的クエリ クラスが役立つのはなぜですか? 誰が私に何が起こっているのか説明できますか?
混乱ドットコム!
asp.net - refを使用してGridView列をメソッドに渡す
そのため、このVBからC#へのWebアプリケーションの移行に取り組んでおり、簡単な回避策があることを期待している問題に遭遇しました。GridViewコントロールを使用するWebフォームがあります。コードでは、ユーザー、権限、および環境に基づいて列を動的に追加するメソッドに列コレクションを渡します。したがって、列は次のようにByRefを使用してVBの関数に渡されました。
C#では、refキーワードを使用しましたが、columnsコレクションにセッターがありません。これに対する私の最も速い回避策は何ですか?これをすぐにjQueryグリッドに変換する予定なので、ベストプラクティスには関心がなく、単に機能させるだけです。
これはC#です:
このように呼ばれています...
wcf - WCFの「参照による」引数は悪いですか、それとも良いですか?
私は最近、参照引数によって操作契約を宣言する WCF サービスを見てきました。
この設計上の決定が行われた理由はわかりませんが (操作は無効です)、さらに、WCF の知識からは、これが良い方法であるかどうかを判断することはできません。または、これが関係ない場合。
どう思いますか?
asp.net - ローカル変数を値でインスタンス化しますか?
なぜこれが起こっているのかはある程度理解できますが、完全ではありません。次のように宣言されたShared
( ) 変数を持つ基本クラスがあります。Static
派生クラスのメソッドで、次のようにローカル変数を設定します。
のようなことをするmyLocalVar.Property1 += value
と、値Property1
はそのメソッドの次の呼び出しまで持続します! なぜそれが起こっているのかがわかると思います。myVar
値ではなく参照によって設定されていますが、これまでにこのようなものに遭遇したことはありません。のプロパティ値を使用して新しいオブジェクトを作成するという私の回避策以外に、値で作成する方法はありmyVar
ますmyLocalVar
か?
c# - Ref Textbox.Text で渡す
現在、ref で textbox.text を渡したいものがあります。テキストボックス全体を渡したくありません。関数が他の変数を返すとともにテキストを変更するようにします。
Textbox.text を ref で渡し、関数内で変更する方法はありますか?
c# - 例外をスローするメソッドから out/ref パラメータを介して値を取得する方法は?
このコードは「出力値」を出力します。
しかし、これはそうではありません。
リフレクションを使用するときに「出力値」と例外の両方を取得するにはどうすればよいですか?
vb.net - メソッド呼び出しでByrefをByvalに切り替えるVB.NET
メソッド呼び出しでByrefをByvalに切り替える
次の理由で多くの警告が発生しました。
「'ByRef'パラメータzzzzの値を一致する引数にコピーして戻す際のxxxxからyyyyへの暗黙の変換。」
これらのメソッド内の参照型ポインターでは特別なことは何も行われておらず、参照型は単に使用されているだけなので、関数パラメーターをbyrefからbyvalに変更しても安全だと思います。実行しても、動作はまったく同じだと思います。オリジナルではなくポインタをコピーしてください。
もう1つの考慮事項は、基本クラスから継承する2つのクラスがあることです。byrefパラメータが基本クラスからより狭い具象クラスへの暗黙のキャストを引き起こしているという点で同じ状況が発生しています。繰り返しますが、byvalを実行しているこのコードにも問題はありません。
参照型を扱うときに関数でパラメーターを使用するためのヒントはありますか?
私のプロジェクトで現在byrefに渡されている他のいくつかは、データベース接続オブジェクト、つまりOracleConnectionとSqlConnectionです。これらをbyrefに渡す正当な理由はありますか?
例1
'ByRef'パラメータ'value'の値を一致する引数にコピーして戻す際の'Object'から'Integer'への暗黙の変換。
発信コード:
働き:
例2
「ByRef」パラメータ「reader」の値を一致する引数にコピーして戻す際の「System.Data.IDataReader」から「System.Data.SqlClient.SqlDataReader」への暗黙の変換。
発信コード:
方法:
javascript - ref で渡された配列の操作
誰かにこれを説明してもらいたい:
しかし、私が次のようなことをすると
行の代わりに$.grep
、私は得る1,2,3,4
. mainArray
によって作成された新しい配列になるべきではありません$.grep
か?