回答編集履歴
1
追記
    
        answer	
    CHANGED
    
    | @@ -20,4 +20,27 @@ | |
| 20 20 | 
             
              } 
         | 
| 21 21 | 
             
              return 0;
         | 
| 22 22 | 
             
            } 
         | 
| 23 | 
            +
            ```
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            [解説]
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            ```C++
         | 
| 28 | 
            +
            #include <iostream> 
         | 
| 29 | 
            +
            #include <fstream>
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            int main() {
         | 
| 32 | 
            +
              int mode = 0;
         | 
| 33 | 
            +
              switch (mode) {
         | 
| 34 | 
            +
              case 0: 
         | 
| 35 | 
            +
                std::ofstream fp("MoveRec.dat", std::ios_base::binary);
         | 
| 36 | 
            +
                fp.close();
         | 
| 37 | 
            +
                break; 
         | 
| 38 | 
            +
              case 1:
         | 
| 39 | 
            +
                break;
         | 
| 40 | 
            +
            /* 文法上、fpはここでデストラクトされる。
         | 
| 41 | 
            +
               case 1 に飛び込んだ時、fpはコンストラクトされていないのに
         | 
| 42 | 
            +
               デストラクトされることになり、不整合が生じる*/
         | 
| 43 | 
            +
              } 
         | 
| 44 | 
            +
              return 0;
         | 
| 45 | 
            +
            } 
         | 
| 23 46 | 
             
            ```
         | 
