1. <s id="4jtld"></s>
    1. <span id="4jtld"><meter id="4jtld"></meter></span>

        <span id="4jtld"></span>
      1. <s id="4jtld"><noscript id="4jtld"><i id="4jtld"></i></noscript></s>
        溫馨提示×

        c++異常1

        發布時間:2020-07-19 06:22:47 來源:網絡 閱讀:294 作者:神ge 欄目:編程語言
        include <iostream>                                                             
        #include <cstdio>
        using namespace std;
        
        class A{
        public:
            A(void){cout << "A::A()" << endl;}
            ~A(void){cout << "A::~A()" << endl;}
        };
        int func3(void){
            A a;
            FILE *fp = fopen("none.txt","r");
            if(!fp){
                throw -1;//拋出異常,跳轉到當前作用域"}",這個異常既可以為基本類型,也可以為類類型
                cout << "func3" << endl;//不執行
            }   
            fclose(fp);
            return 0;
        }
        int func2(void){
            A a;
            func3();//func3函數拋出異常后,在函數func2內沒能處理,把異常接著拋,
                    //所以會z直接跳到此作用域的"}"
            cout << "func2" << endl;//不會執行
            return 0;//不執行
        }
        int func1(void){
            A a;
            func2();//func1沒能處理來自func2的異常,異常接著拋,直接跳到此作用域的"}"
            cout << "func1" << endl;//不執行
            return 0;//不執行
        }
        int main(void)
        {
            try{
                func1();
                //...
            }
            catch(int ex){//try語句塊下面必須為catch語句塊,是其他語句則報錯,這里catch捕獲
                          //到異常,然后繼續執行.
             cout << "ex=" << ex << endl;
                cout << "file open error" << endl;
                return -1;
            }
            return 0;
        }


        免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

        主題地圖

        欧美午夜理伦三级在线观看,欧美午夜乱伦片,欧美午夜乱色视频在线观看,欧美午夜免费一区二区,欧美午夜片欧美片在线观看