題目 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 ...