異常類構建:
;以下為實現自己的異常庫mylib部分**
file:exception.h
namespace mylib ;
//計算異常
class arithmeticexception : public exception
arithmeticexception(const
char* message):exception(message){}
arithmeticexception(const
char* file,int line):exception(file,line){}
arithmeticexception(const
char* message,const
char* file, int line):exception(message,file,line){}
arithmeticexception(const arithmeticexception& e):exception(e){}
arithmeticexception& operator= (const arithmeticexception& e)
};}
file:exception.cpp
namespace mylib
; itoa(line,sl,10);
m_location = static_cast
(malloc(strlen(file)+strlen(sl)+2));
m_location = strcpy(m_location,file);
m_location = strcat(m_location,":");
m_location = strcat(m_location,sl);
}else
}exception::exception(const
char* message)
exception::exception(const
char *file, int line)
exception::exception(const
char *message, const
char *file, int line)
//拷貝建構函式
exception::exception(const exception &e)
exception& exception::operator =(const exception& e)
return *this;
}const
char* exception::message() const
const
char* exception::location() const
exception::~exception()
}
file:main.cpp
#include
#include "exception.h"
using
namespace
std;
using
namespace mylib;
int main()
catch(const arithmeticexception& e)
{cout
<
<< e.message()
<< e.location()
{cout
<
<< e.message()
<< e.location()
0;
執行結果:
hello world!
catch(const arithmeticexception& e)
test
..\mylib\main.cpp:18
學習內容來自d.t.software的資料結構課程,希望可以和大家一起學習
異常類構建
構建異常類的原因 因為當代的c 庫基本上都會使用c 中的異常特性,依賴於異常建立出來的庫穩定性非常好。思路 c 中異常的型別可以是自定義類型別。異常類的標頭檔案 ifndef exception h define exception h include object.h namespace dtli...
《資料結構》 實驗1 1
資料結構 實驗一 vc程式設計工具的靈活使用 一 實驗目的 複習鞏固vc程式設計環境的使用,以及c 模板設計。1.回顧並掌握vc單檔案結構程式設計過程。2.回顧並掌握vc多檔案工程設計過程 3.掌握vc程式除錯過程。4.回顧c 模板和模板的程式設計。二 實驗內容 1.設計乙個單檔案結構程式完成從鍵盤...
《資料結構》 實驗1 1
資料結構 實驗一 vc程式設計工具的靈活使用 一 實驗目的 複習鞏固vc程式設計環境的使用,以及c 模板設計。1.回顧並掌握vc單檔案結構程式設計過程。2.回顧並掌握vc多檔案工程設計過程 3.掌握vc程式除錯過程。4.回顧c 模板和模板的程式設計。二 實驗內容 1.設計乙個單檔案結構程式完成從鍵盤...