この質問がトピックであることを願っています。何かをoutパラメータとして返す正しい用語は何ですか?
私は、コードレビューを行うと、以下の機能につまずいた:
bool SomeFunc(std::string& o_xxx, char& o_yyy);
をこの関数はアウトパラメータによってxxx
といくつかのクラスのyyy
の値を取得するために使用されます。
(以降オートドキュメントのために使用される)コメントは言う:
参照により...この関数の戻り[XXX]及び[YYY] ...明らか
成功または失敗を示すブール値を返します。したがって、上記の文は言い換える必要があります。しかしどうですか?何かを返すための正しい用語(存在する場合)は、そのまま、outパラメータを使って、言い換えれば、参照渡しの引数を取り込むことですか?
質問には、C++固有ではないので、タグが付いた言語には依存しません。しかし、C++でタグ付けされているのは、その例がC++であるためです。最も簡単な言葉で
私は通常、「関数が成功したか失敗したかを示す値を返すの効果に何かを言う成功した場合には、 'o_xxx'があります。 [xxx]と 'o_yyy'の値は[yyy]の値になります。失敗した場合、引数は変更されません。" –
戻すパラメーターが複数あるため、Outパラメーターが使用されることがあります。それらをクラスに結合すると、インスタンスを返すことができます。しかし、効率を上げるためにアウトパラメータが使用されることもあります。最後に、なぜあなたはデータを渡していますか?カプセル化:教えてください、尋ねないでください! –
@ R.MartinhoFernandes: "失敗した場合、引数は変更されません" - これは強力な例外保証であることに注意してください。だから、もしあなたがこれを言うならば、文字列代入が失敗する可能性があるので、関数o * o_yyyに代入する前に関数o_xxxに代入してください。または、スワップを使用します。 –