問題タブ [undef]
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.
ruby - undefの実用化
重複の可能性:
undef-なぜrubyでメソッドの定義を解除したいのですか?
誰かがルビーのundefの実用的な使用法をレイアウトできますか?私はそれが組み込まれていないjavascriptやpythonのような言語から来ています。もちろんjavascriptのような言語でそれをシミュレートすることができます:
しかし、私は実際にそれを使用したことはありません。undefが実際に役立つ一般的な状況はありますか?
編集-「Rubyプログラミング言語」という本でこれに出くわしたばかりです。
オブジェクトのコピーを防ぐもう1つの方法は、undefを使用してcloneメソッドとdupメソッドを削除することです。さらに別のアプローチは、cloneメソッドとdupメソッドを再定義して、コピーが許可されていないことを具体的に示すエラーメッセージで例外を発生させることです。このようなエラーメッセージは、クラスを使用しているプログラマーに役立つ場合があります。
arrays - 定義された関数が機能しないのはなぜですか?
期待どおりに機能しないコードがあります。定義された関数は機能しません。
出力を取得します
明らかに$jobs[1]
ですundef
。私は何が欠けていますか?
perl - Perl Eval での警告
eval 内で警告を非表示にする必要がありますが、残りのコードは引き続き警告メッセージをスローする必要があります。これが私が持っているものです-
$hash->{key} の値は、次のような関数呼び出しになる可能性があります。
問題$another_var
はundef
(または""
) の場合です。スクリプトは、次のメッセージで失敗します-
(eval 1381) 行 1 の乗算 (*) の引数 "" は数値ではありません。
これを回避する方法はありますか?私が考えていた1つのオプションは、括弧内の値を解析して最初に評価することでしたが、私が扱っているデータは非常に複雑です。
c++ - #undefmainは結果を出しません
MVisualC ++ 2010を使用していますが、「メイン」の定義を解除しようとすると、結果が得られず、コンソールが通常どおり起動します。エントリポイントの欠落エラーなどが予想されていました。何故ですか?
arrays - すべての変数値をクリアする組み込み関数はありますか
Perlプログラムですべての配列をクリアする方法を探しています。
現在、すべての配列を明示的に「リセット」するサブルーチンを呼び出しています。
sub clear_arrays{(@array1,@array2,@array3)=((),(),());}
これにより、プログラム内のすべての配列を検索し、サブルーチン内で文字通りそれらを参照する必要があります。
reset
、、のperldocを調べましたが、undef
すべてdelete
の配列をクリアするような方法でそれらを解釈することはできませんでした。
これを行うことができるPerlの組み込み関数はありますか?
そうでない場合、すべての配列変数の配列を返す関数はありますか?
元:
getarrays()
プログラム内の初期化された配列の一部またはすべてを返す組み込みのPerl関数は
どこにあるのでしょうか。
編集:
私の特定の状況には、リセットする必要がある2つのグローバルアレイのみが含まれます。私は必要性よりも好奇心から質問を広げました。基本的に、私のグローバルは
@email_subject
&@email_msg
です。
スクリプトが進行し、データが収集/分析されると、値がプッシュされます。スクリプトの最後に電子メールメッセージが送信され、ループ条件変数に応じてスクリプトが再度実行される場合があります。
再度実行する場合は、これら2つのグローバルをクリアして、次のループサイクル中に再度集約できるようにする必要があります。リテラル参照を介してこれら2つの配列をクリアすることは私を殺すことはありませんが、Perlには、文字通り参照せずに配列をクリアするための組み込み関数がすでにあるかどうか疑問に思っていました。
これはこれを達成するための最良の方法ではないかもしれませんが、私が考えた最初の直感的なオプションでした。
perl - perlのメモリ不足メッセージ処理各2MBの64個のXMLファイル-unix
変数とundefをグローバル化し、unixのデータセグメントスペースを増やし、変数をローカライズしようとしましたが、それでも同じエラーが発生します。約750個のファイルを処理する必要があります。誰か助けてもらえますか?ありがとう。ファイル全体を文字列に読み込むことが問題になる可能性があることはわかっています。しかし、他の方法はわかりません。しかし、それでも私は文字列をグローバルとして宣言し、それを=""にします。次の反復でメモリを解放する必要がありますか?
}}
c - C プリプロセッサでヘッダーをループする
インクルード/定義されたすべてのヘッダー ファイルをループしてから、#undef
それらすべてをループする方法はありますか?
ループが問題である場合#undef
、それらすべてを簡単に行う別の方法はありますか?
arrays - Perl: リストの最初の要素へのマッピング
タスク: マップを使用してハッシュを作成します。ここで、キーは指定された配列 @a の要素であり、値は関数 f($element_of_a) によって返されるリストの最初の要素です。
f() が空のリストを返すまでは問題ありません (これは f() にとってはまったく正しいことであり、その場合は undef を割り当てたいと思います)。エラーは、次のコードで再現できます。
エラー自体は、「ハッシュ割り当ての要素数が奇数」のように聞こえます。次のようにコードを書き直すと、
また
Perl はまったく文句を言いません。
では、これをどのように解決する必要がありますか? 返されたリストが空の場合、f() によって返されたリストの最初の要素を取得しますか?
Perl のバージョンは 5.12.3 です
ありがとう。
c++ - #undef の前に #ifdef が必要なのはいつですか?
多くの C および C++ ファイルで、次のようなマクロを見てきました。
単純に書くだけで十分だと思います:
マクロX
が定義されていない場合、#undef
は効果がありません。
マクロのみを未定義にしたい場合は、standaloneを配置しても問題ありませんか? とにかく、それはコーディングの習慣を悪くしますか?#undef
c# - c#すべてのパラメータの定義を解除する簡単な方法
私は多くの計算を行っているC#winformアプリを持っています。プロセスをトリガーするための「実行」ボタンがあります。プログラムを再起動せずに、情報を「再トリガー、再実行、または再送信」できるようにしたいと思います。問題は、リセットする必要のある変数がたくさんあることです。すべてのパラメーターの定義を解除(リセット)する方法はありますか?