c++标准异常类的继承实现

出处来自百度。查来学习之用

// AbnomalTest.cpp : 定义控制台应用程序的入口点。
#include "StdAfx.h"
#include <iostream>
using namespace std;
class triangle :public exception//定义一个三角形的类
{
public :
 float a,b,c,d;
 float s;
public:
 triangle()
 {}
 triangle(float a1,float b1,float c1)
 {
  a=a1;
  b=b1;
  c=c1;
 }
 void judgment()  throw(exception)//判断是否是三角形
 {
  if((a+b)<c ||(a+c)<b || (c+b)<a)//任意两边和小于第三边,就不是三角形
  {
   throw exception("不是三角形");
  }
 }
 void dimension()//计算面积
 {
  d=(a+b+c)/2;        //海伦公式
  s=sqrt(d*(d-a)*(d-b)*(d-c));
 }
};
void _tmain()
{
 triangle a(7,2,3);

 try
 {
  a.judgment();
  a.dimension();
  cout<<"三角形a的面积为: "<<a.s<<endl;
 }
 catch(exception &e)
 {
  wcout<<e.what()<<endl;
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值