Re: こんなコード書く?
IIJIMA Hiromitsu wrote:
> return ((n<1||n>12)?name[0]:name[n]);
>
> 私なら通常はif文で書きますけど(例外:式しか書けない場所)、
> 皆さんはこういうコードは書きます?
書きますよ。
もしこれを単純にif文に直すとすれば
if(n<1||n>12) return name[0];
else return name[n];
となるわけですよね?
構造化プログラミングの原則は「出入口はひとつずつ」なので、
あまりに複雑さに差が出る場合以外は三項演算子を使います。
関数型言語を使ってみれば三項演算子の意義がわかってくるのではないでしょうか?
----
齊藤@生涯一趣味プロ
URI http://saito.s4.xrea.com/
e-mail saito@s4.xrea.com
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735