亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

C/C++、Java、Go、Python總結對比27-try...catch

系統 1742 0

我們平時寫完代碼運行的過程中,會出現一些問題,但是又不想讓程序立馬掛掉,或者有些數據沒有處理程序就終止運行了。

對于不想讓程序直接遇到問題就停止的情況,我們可以用try...catch...捕獲異常,打印出異常后繼續運行。對于有些數據沒有處理程序就掛掉的情況,我們可以用c++的析構函數和java中的finally來進行處理。

  • throw: ?當問題出現時,程序會拋出一個異常。這是通過使用? throw ?關鍵字來完成的。
  • catch: ?在您想要處理問題的地方,通過異常處理程序捕獲異常。 catch ?關鍵字用于捕獲異常。

C++ 提供了一系列標準的異常,定義在 中,我們可以在程序中使用這些標準的異常。它們是以父子類層次結構組織起來的,如下所示:

C/C++、Java、Go、Python總結對比27-try...catch異常-c++_第1張圖片

表是對上面層次結構中出現的每個異常的說明:

C/C++、Java、Go、Python總結對比27-try...catch異常-c++_第2張圖片

代碼示例:

            
              #include 
              
                
#include 
                
                  
#include 
                  
                    
#include 
                    
                      
using namespace std;

class Test {
public:
    int a;
    int b;
    Test(int a, int b) {
        this->a = a;
        this->b = b;
    }

    double division() {
        if (b == 0) {
            throw "Division by zero condition!";  //自定義拋出的異常
        }
        return (a/b);
    }
    ~Test() {  //此函數為析構函數,異常發生后,該函數會被執行,相當于java中的finally
        cout<<"this func will be exec finally"<
                      
                         v(10);
    try {
        v.at(100) = 100;  //拋出 out_of_range 異常
    }
    catch (out_of_range & e) {
        cerr << e.what() << endl;
    }
    string s = "hello";
    try {
        char c = s.at(100);  //拋出 out_of_range 異常
    }
    catch (out_of_range & e) {
        cerr << e.what() << endl;
    }

    return 0;
}

                      
                    
                  
                
              
            
          

總結:

  1. c++的析構函數相當于finally的作用;
  2. c++的異常捕獲使用并不靈活,需要提前知道會發生哪些異常再進行定義。

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 黄片一级毛片 | 浮力影院欧美三级日本三级 | 中文字幕在线观看免费视频 | 国产夜色 | 亚洲最大的成人网 | 亚洲黄页| 国产欧美一区二区三区免费 | 色综合成人网 | 日韩一区二区三区视频在线观看 | 久久成人免费视频 | 不卡久久 | 久久久久久夜精品精品免费 | 国产大片中文字幕 | 在线免费观看一级毛片 | 伊人久久大香线蕉亚洲 | 色婷婷狠狠五月综合天色拍 | 国产高清在线精品一区二区三区 | 精品免费国产一区二区三区 | 亚洲图片综合 | 午夜看一级特黄a大片黑 | 精品无人区乱码一区二区 | www.香蕉网 | 成人爽a毛片在线视频网站 成人爽视频 | 农村寡妇一级毛片免费播放 | 一级淫片免费看 | 久久新| 亚州一级毛片在线 | 嘿嘿嘿视频免费网站在线观看 | 欧美国产精品亚洲精品第一区 | 久草免费看 | 亚洲专区区免费 | 米奇精品一区二区三区 | 精品免费视频 | 亚洲水蜜桃久久综合网站 | 午夜精品影院 | 亚洲精品久久久中文字 | 九九综合九九 | 亚洲欧美综合网 | 精品国产免费久久久久久 | 国产真实乱人偷精品 | 欧美日韩国产高清一区二区三区 |