實驗15和異常處理

2022-12-25 16:30:02 字數 2467 閱讀 4838

1. 實驗目的和要求

1) 理解函式模板與類模板的概念。

2) 掌握函式模板的應用。

3) 掌握類模板的應用。

4) 理解出現異常時的處理方法。

2. 實驗內容

任務1:程式調適

下列程式應用乙個函式模板,其功能為使用氣泡排序將不同型別的陣列內容由小到大排列。函式的引數有兩個,其中乙個為通用型別的陣列,另乙個為陣列的元素個數,型別為整型。程式**為:

#include<>

template

void sort(t*array,int size)

測試用的main函式如下:

void main()

; int i;

sort(intarray,7);

for(i=0,i<7;i++)

cout

sort(doublearray,7);

for(i=0,i<7;i++)

cout

sort(chararray,7);

for(i=0,i<7;i++)

cout

任務2:程式設計

參照任務1,定義乙個函式模版,能分別完成對int與int、double與double,int與char型資料的加法。

任務3:程式除錯

程式由兩個檔案function_構成,請建立檔案,並除錯程式,修改程式中的錯誤,回答給出的問題。

//檔案1 function_

#ifndef function_template

#define function_template

//函式模版宣告

template

t sum(t*array,int size)

//模版函式過載

template

t sum(t*array1,t*array2,int size)

templatet max(t x,t y)

templatet func()

#endif

//檔案2

#include」function_

#include

using namespace std;

void main()

; static int intarr2=;

static double douarr=;

int itotall=sum(intarr1,intarr2,8);

cout< cout< cout<}

(1) 指出錯誤語句,並解釋原因。

(2) 函式模版宣告與函式模版定義為什麼必須一起放在標頭檔案中?

(3) 指出檔案中函式模版的定義及模版函式的過載。

任務4:程式設計

參照任務1,定義乙個陣列的函式模版,能夠完成對int、double、char型的陣列從小到大排序。

任務5:程式除錯

設有表示式:f(a,b,c)=√a+b/c,計算表示式的值,要求能排除除數為0及根號小於0的異常。在求f(a,b,c)表示式時可能會遇到兩種異常:

除數為0和負數開根號,因此需要設立兩個處理這些異常的類yc1、yc2,分別在c為0及負數開根號時丟擲異常。在函式f1中首先呼叫函式f,捕獲不同的錯誤及處理錯誤。程式**如下:

#include<>

#include<>

class yc1{};

class tc2{};

double f(double a,double b,double c)

void f1(double a,double b,double c)

catch(yc1)

catch(yc2)

}void main()

任務6:程式設計

建立類rationalnumber(分數類),使之具有下述能力:

(1) 建立建構函式,它能防止分母為0,當分數不是最簡形式時進行約分以及避免分母為負數等。

(2) 過載加法、減法、乘法以及除法運算子。

任務7:程式除錯

分析下列程式,寫出程式執行結果。

#include

using namespace std;

templateclass stack

int isfull()const

public:

stack(int sz);

~stack()

int push(const t&);

int pop(t&);

};templateint stack::push(const t &pushvalue)

return 0;

}templateint stack::pop(t&popvalue)

return0;

}int main()

cout< int popi:

while(succ=

cout< cout<}

考勤異常處理與招聘異常處理會議報告

會議報告 會議時間 2012年10月8日 地點 906辦公室 參會人 記錄人 議題 議題一,考勤管理維護及改進 議題二,生產體系人員招募推進 會議概要 一 根據現有生產體系人員考勤情況,考勤管理存在四方面問題及漏洞 1.上班不打卡 2.代他人打卡 3.打卡時長與加班申請單上時長不一致 4.請假依舊打...

品質異常處理規定

1.目的 制定本規定的目的是為了使發現的製程品質異常能夠立即向相關部門和人員反映,能得到及時有效地分析和處理。2.適用範圍 適用於本公司所有拉線生產過程中品質異常的處理。3.定義 無4.職責 4.1 品質部 4.1.1品質異常的發現與報告 必要時,其他部門也可提出 4.1.2異常原因分析部門 必要時...

製程異常處理規範

1第一版擬制 審核 批准 旨在建立公司製程產品質量異常反饋,使異常事項能快速得以解決並能有效預防異常再發,進而提公升整體工作質量及效率,特訂定本規範。本程式適合公司內所有制程產品質量異常之回饋與處理。3.1生產單位 負責質量異常原因初步排除 如裝置 治工具造成之異常 及異常之提出,制止異常擴散蔓延,...