問題タブ [return-value]
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++ - int main() {} がコンパイルされるのはなぜですか?
(私は Visual C++ 2008 を使用しています) main() は整数を返す必要があるといつも聞いていましたが、ここでは入れずreturn 0;
、エラー 0 と警告 0 でコンパイルしました! デバッグ ウィンドウでは、プログラムがコード 0 で終了したと表示されます。この関数が main() 以外の名前である場合、コンパイラは、'blah' は値を返さなければならないと警告します。a を貼り付けてreturn;
も、エラーが表示されます。しかし、それを完全に除外すると、問題なくコンパイルされます。
これは VC++ のバグでしょうか?
javascript - $.getJSON 関数から変数を返すにはどうすればよいですか
利用範囲StudentId
外での利用に戻したい$.getJSON()
これはスコーピングに関係していると思いますが、c#と同じようには機能しないようです。
python - 関数が複数の値を返すのはpythonicですか?
Python では、関数が複数の値を返すようにすることができます。これは不自然な例です:
これは非常に便利なようですが、悪用される可能性もあるようです (「関数 X は、必要なものを中間値として既に計算しています。X にその値も返させましょう」)。
いつ線を引いて別のメソッドを定義する必要がありますか?
coding-style - 戻り値にはどの構文が適していますか?
私は大規模なコード レビューを行ってきましたが、いたるところで気づいた 1 つのパターンは次のとおりです。
これは、私がこれを行う方法ではなく、それが何であるかを知っていたときに値を返すだけでした。この2つのパターンのうち、どちらがより正しいでしょうか?
戻り値が 1 つのプレーブにのみ割り当てられ、割り当てられた後にコードが実行されないように、ロジックが常に構造化されているように見えることを強調します。
c# - メソッドが失敗したことを示す方法
私はいくつかの同様の方法を持っています。CalculatePoint(...) および CalculateListOfPoints(...)。場合によっては、成功しない場合があり、呼び出し元にこれを示す必要があります。一般的なリストを返す CalculateListOfPoints の場合、空のリストを返し、呼び出し元にこれを確認するように要求することができます。ただし、 Point は値型であるため、そこで null を返すことはできません。
理想的には、メソッドが「似ている」ようにしたいと思います。1つの解決策は、それらを次のように定義することです
または代わりにポイントを返すには?失敗を示すために null を返します。ただし、null 非許容型にキャストし直す必要があることを意味しますが、これは過剰に思えます。
もう 1 つのルートは、ブール型の boSuccess を返し、結果 (ポイントまたはリスト) を「out」パラメーターとして持ち、それらを TryToCalculatePoint などと呼ぶことです...
ベストプラクティスとは?
編集:フロー制御に例外を使用したくない! 失敗が予想されることもあります。
c++ - 別の関数の戻り値を返す関数
Bar()
の代わりに呼び出したい場合、Foo()Foo()
がBar()
返すもののコピー (追加のオーバーヘッド) を返しますか、それともFoo()
一時スタックに配置される同じオブジェクトを返しますか?
design-patterns - 「TryParse/Parselike」パターン:それを実装するための最良の方法は何ですか
この質問は、メソッドが失敗したことを示す方法からのフォローアップです。xxx()Tryxxx()パターンは、多くのライブラリで非常に役立つものです。コードを複製せずに両方の実装を提供するための最良の方法は何でしょうか。
最高のもの:
また
私は本能的に最初の例がより正しいと思います(どの例外が発生したかを正確に知っています)が、try / catchは高すぎるのではないでしょうか?2番目の例で例外をキャッチする方法はありますか?
c++ - const char * を戻り値の型としてキャッシュする
C++ について少し調べていたところ、RTTI (Runtime Type Identification) に関する次の記事が見つかりました:
http://msdn.microsoft.com/en-us/library/70ky2y6k(VS.80).aspx。まあ、それは別の話題です:) -しかし、クラスで奇妙なことわざにtype_info
出くわしました。つまり、メソッドについて::name
です。「type_info::name
メンバー関数はconst char*
、型の人間が読める名前を表す null で終わる文字列に a を返します。ポイントされたメモリはキャッシュされており、直接割り当てを解除することはできません。」
どうすればこのようなものを自分で実装できますか!? char
呼び出し元が削除する新しい -array を作成したくないため、以前はこの正確な問題にかなり苦労していたので、std::string
これまでに固執してきました。
簡単にするために、 を返すメソッドを作りたいとし"Hello World!"
ましょう。それを呼び出しましょう。
個人的には、次のようにします(疑似):
..しかし、これは、呼び出し元がdelete[]
私のリターンポインターで a を実行する必要があることを意味します:(
事前にThx
c++ - main() は C および C++ で何を返す必要がありますか?
main()
C および C++ で関数を定義する正しい (最も効率的な) 方法は何ですか?int main()
またvoid main()
、その理由は何ですか? そして、議論はどうですか?もしそうならint main()
、return 1
またはreturn 0
?
この質問には、次のような多数の重複があります。
main()
C の関数の有効な署名は何ですか?main()
関数の戻り値の型void main()
との違いはint main()
?main()
C++ での の署名- の適切な宣言は
main()
何ですか? — C++ の場合、確かに非常に良い答えです。 main()
Cの関数のスタイルmain()
Cのメソッドの型を返すint main()
対void main()
C
関連している:
java - Eclipseでデバッグしているときに戻る前に戻り値を見つけることはできますか?
行が実行された後、命令ポインターが呼び出し元の関数に戻る前に、メソッドの戻り値を確認することはできますか?
変更できないコードをデバッグしています(読んでください:サードパーティのライブラリを再コンパイルしたくない)、ソースがないコードにジャンプしたり、return式に副作用があり、私がいるのを止めたりすることがあります[表示]タブで式を実行するだけです。
多くの場合、戻り値は複合ステートメントで使用されるため、変数ビューに値が表示されることはありません(したがって、制御が呼び出し元の関数に戻る前に結果を確認する必要があります)。
更新:ステートメントに副作用があるため、式ビューアを使用できません。