第三次上機第一題

2021-10-13 19:05:22 字數 2073 閱讀 6991

題目 1、類的定義與基本操作

class fraction

fraction(const fraction& rhs) : m_numerator(rhs.m_numerator),

m_denominator(rhs.m_denominator)

};fraction divide1(const fraction& divident, const fraction& divisor)

fraction divide2(fraction divident, fraction divisor)

說明執行下列語句後,分別執行的什麼操作,會輸出什麼?

fraction a;

執行預設建構函式,輸出constructor called

fraction b(a);

執行複製建構函式,輸出copy constructor called

fraction c = fraction(3, 2);

執行引數建構函式,輸出constructor called

fraction d1(2, 3), d2(4, 5);

執行兩次引數建構函式,輸出

constructor called

constructor called

fraction e1 = divide1(d1, d2);

divide1返回了fraction(int,int),定義e1執行引數建構函式,輸出constructor called

fraction e2 = divide2(d1, d2);

divide2的兩個形參以複製構造的方式建立,分別複製實參d1和d2,返回的臨時物件也以複製構造的方式產生,再用這個臨時物件複製構造物件e2。輸出

copy constructor called

copy constructor called

copy constructor called

copy constructor called

在上述類的定義基礎上,完善下列操作:

顯示定義析構函式;

獲取分數的分子;

獲取分數的分母;

實現分數的約分;

實現對兩個分數物件進行通分;

使用 operator/操作符過載實現兩個分數的除法運算。

#include

using

namespace std;

class

fraction

public

:fraction

(int above =0,

int below =1)

://含參建構函式

m_numerator

(above)

,m_denominator

(below)

fraction

(const fraction& rhs)

:m_numerator

(rhs.m_numerator)

,m_denominator

(rhs.m_denominator)

~fraction()

intgetnumerator()

const

intgetdenominator()

const

void

simplify()

};fraction operator

/(fraction& f1, fraction& f2)

fraction divide1

(const fraction& divident,

const fraction& divisor)

fraction divide2

(fraction divident, fraction divisor)

fraction tongfen

(const fraction& a,

const fraction& b)

第三次作業第一題

本組專案的github版本更新流程 基於四則運算專案和本組成員的整體情況,我們小組決定採用git flow工作流程。如上圖所示,我們專案將使用兩個分支,分別是主分支master和開發分支develop,master分支用來存放能夠穩定執行的對外發布版本,develop分支用來存放最新的開發版 可能會...

C 第三次上機

題目一 假設有乙個字串strfilename d c 程式設計 實驗3 myfile.txt 使用字串方法,取出路徑中的檔名 myfile.txt 要求至少想出三種方法實現 1 using system using system.collections.generic using system.li...

PTA第三次上機

include include include using namespace std class polygon int perimeter 計算多邊形邊長 void display 輸出多邊形邊數和周長 int reachsidelen int polygon perimeter return ...