C++中的std::runtime_error

2023年8月5日,周六上午


目录

  • 头文件
  • 使用方法
  • 示例程序

头文件

std::runtime_error定义在头文件stdexcept中。

stdexcept,即standard except(标准异常)。

使用方法

    try {
	    // 有可能抛出 std::runtime_error 的代码
	    throw std::runtime_error("Something went wrong.");
	    
	} catch (const std::runtime_error& e) {
	    // 异常处理逻辑
	    std::cout << "Exception caught: " << e.what() << std::endl;
	}

示例程序

#include
#include

class Bank{
	
	double money=0;
	
public:
	void in(double amount){
		money+=amount;
	}
	
	void out(double amount){
		if((money-amount)<0){
			//要取出的钱比存款多时抛出异常
			throw std::runtime_error("抱歉,余额不足");
			return;
		}
		money-=amount;
	}
};

int main(){
	Bank XiaoMing;
	try {
	    // 有可能抛出 std::runtime_error 的代码
	    XiaoMing.in(100);//存100
	    XiaoMing.out(200);//存款只有100,却取200,抛出异常
	    
	} catch (const std::runtime_error& e) {
	    // 异常处理逻辑
	    std::cout << "Exception caught: " << e.what() << std::endl;
	}

}

你可能感兴趣的:(我的博客,c++,开发语言)