Rogueというゲームのソースコードを見ていてどうしても分からないことがあります。
html
1 switch (obj->o_which) 2 { 3 case S_CONFUSE: 4 /* 5 * Scroll of monster confusion. Give him that power. 6 */ 7 player.t_flags |= CANHUH; 8 msg("your hands begin to glow %s", pick_color("red")); 9 when S_ARMOR: 10 if (cur_armor != NULL) 11 { 12 cur_armor->o_arm--; 13 cur_armor->o_flags &= ~ISCURSED; 14 msg("your armor glows %s for a moment", pick_color("silver")); 15 } 16 when S_HOLD: 17 /*
@(#)scrolls.c 4.44 (Berkeley) 02/05/99
Rogue: Exploring the Dungeons of Doom
Copyright (C) 1980-1983, 1985, 1999 Michael Toy, Ken Arnold and Glenn Wichman
All rights reserved.
より一部を引用。
https://www.atmarkit.co.jp/ait/articles/1708/02/news013_2.html
https://itsakura.com/csharp-switch
https://ufcpp.net/study/csharp/st_branch.html
switch文にwhenで条件を追加できるのは上のURLで分かりますが、このケースではwhenの使用方法が全く違う気がします。まるでcaseと同格の使い方をしているように見えます。
しかしどれだけ検索してもこのwhenについての解説が見当たりません。一体どういう意味なのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/12 23:47
2019/11/12 23:48
2019/11/12 23:50