2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

プログラミングでこういうことをするのはあり?

1 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:07:15.571 ID:6alRfAof0.net
プログラミングって関数の戻り値は大抵原則一つだよね。
これを増やすためにこんなことするのはあり?

戻り値じゃなくて引数の方を使う。
で当該の引数に、変数そのものじゃなくてその変数のアドレスを渡す。
で、関数内部で処理した後、計算や処理結果をその変数のアドレスに代入して、関数が終了する様に組む。

変数そのものはその関数じゃなくて上位のスコープで与えたものだから、関数が終わっても解放されない。
だからその関数で与えた引数のアドレスを読み込めば、変数に格納されたデータは有効なはず。
結果、戻り値をいくらでも増やすことができる。
こうすれば関数の実行結果と、その関数自体が正常に終われたか途中で例外が起きて処理を打ち切ったかなどを、両方返すということも可能になる。

そういうのはあり?

2 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:08:40.297 ID:Vkqmn1Lp0.net
フォートランのsubroutineはその方式やね

3 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:08:40.755 ID:dvDhFV+w0.net
それ普通にCじゃ良くやってる事なんじゃ

4 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:08:51.570 ID:mHENi+yJ0.net
Tupleで返せよ・・・

5 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:10:42.784 ID:5FPhWBci0.net
なにで書くんや?

6 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:12:24.704 ID:5+xQ2gklM.net
グローバル変数みたいの使えばいいんじゃないの?

7 :以下、?ちゃんねるからVIPがお送りします:2018/06/04(月) 05:15:14.932 .net
>>1>>1君、参照渡しって知ってる?

君が思いつくものは99.999999999%先人がとっくの昔に創ってくれているよ

総レス数 7
2 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200