C++選擇箱子function試寫

職訓初期是學C/C++作為入門銜接JAVA的程式語言,那時還沒體會過物件導向的我,對函數式程式設計這個概念感到興趣,我想到文字冒險遊戲有依照對話選擇,引導到不同對話的設計,然而如果沒有這類型的設計思維,單純用switch,switch的case只會越來越多,並且越包越巢狀,也不利實用,所以自己摸索寫了個陽春版主控台程式。

#include <iostream>
#include <string>
 
void whichBox(int pick, char *talk1, char *talk2)
{
     switch (pick)
     {
     case 1:
          printf("%s\n", talk1);
          break;
     /*----------------------------------我是分隔線---------------------------------------*/
     case 2:
          printf("%s\n", talk2);
          break;
     }
}
using namespace std;
 
int main()
{
     int youPick;
     puts("選擇1輸入1,選擇2輸入2:"); //除錯:應該要再做個限制輸入 說"不可以輸入選項外的數字"
     cin >> youPick;
     whichBox(youPick, "1", "2");
     if (youPick == 1)
     {
          puts("選擇3輸入3,選擇4輸入4:");
          cin >> youPick;
          whichBox(youPick, "3", "4");
     }
     else
     {
          puts("選擇5輸入5,選擇6輸入6:");
          cin >> youPick;
          whichBox(youPick, "5", "6");
     }
     return 0;
}