第8次作业

发布 2023-05-16 15:04:28 阅读 7975

第8次练习。

1. 对象与函数。

a) 对象作函数参数。

1. 传对象值:调用复制构造函数,实参为对象名,形参为对象名。

2. 传对象的地址:实参为对象的地址,形参为指针变量,访问成员时要使用“->不调用复制构造函数。

3. 传引用:实参为对象名,形参为引用。不调用复制构造函数。效率高。

b) 函数返回对象。

当返回的是对象名时,要调用复制构造函数。

2. 对象作为类的数据成员。

a) 类的构造函数首先要为对象成员初始化,然后再执行自己的函数体,为基本数据类型的成员初始化。

b) 构造函数的定义形式:采用构造函数初始化列表的形式。若不使用初始化列表形式,则会自动调用对象成员的无参构造函数。

c) 析构时,先调用类的析构函数,再调用对象成员的析构函数。

程序设计练习。

1. 定义复数类complex,添加成员函数addition与subtraction,分别实现当前对象与给定对象的和、差。

class complex

private:

double real,imag;

public:

complex(double r=0,double i=0);

~complex();

void setri(double=0,double=0);

double getreal();

double getimag();

void getri(double&,double&);

double getmod();

void print();

complex addition(complex&);

complex subtraction(complex&);

#include ""

#include<>

#include<>

complex::complex(double r,double i)

real=r;

imag=i;

cout<<"constructor is called."<

complex::~complex ()

cout<<"destructor is called."<

void complex::setri(double r,double i)

real=r;

imag=i;

double complex::getreal()

return real;

double complex::getimag()

return imag;

void complex::getri (double &r,double &i)

r=real;

i=imag;

double complex::getmod()

return sqrt(real*real+imag*imag);

void complex::print ()

if(imag>0)

cout< else if(imag<0)

cout< else

cout<}

complex complex::addition(complex &t)

return complex(real+ imag+

complex complex::subtraction(complex &t)

return complex(

#include""

#include <>

void main()

complex a(1,2), b(3,4);

complex sum1= (b);

complex sum2= (b);

2. 定义点类point,定义圆类circle,该类中包含两个数据成员:point类的center,表示圆心坐标,double型的r,表示半径。写出两个类的完整定义。

#include<>

class point

int x,y;

public:

point(int x1=0,int y1=0)

void print()

void set(int x1=0,int y1=0)

void get(int&x1,int&y1)

~point()

#include""

#include<>

class circle

point center;

double r;

public:

circle():center(0,0)

circle(double r1):center(0,0)

circle(int x,int y,double r1):center(x,y)

void setr(double r1)

double getr()

point getc()

void setc(int x,int y)

void setc(point &t)

double getarea()

void print()

~circle()

#include""

void main()

circle a;

circle b(1.5);

circle c(2,2,1.5);

生物第8次作业

前郭县蒙古族中学高一生物。第 8 次作业。高一班。出题人 1.植物细胞与动物细胞相比,植物细胞特有的是。a 细胞膜 b 细胞质 c 细胞核 d 细胞壁。2.在制备纯净的细胞膜时,我们一般不选用植物细胞人作为实验材料,主要原因是。a 细胞膜与细胞壁紧密结合,不易分离 b 不易吸水胀破。c 很难得到完整...

第8次作业循环

单选题 1 如下程序的输出结果是 include main int a 3 3 i,j,s 0 for i 1 i 3 i for j 0 j printf d n s a.14b.19 c.20d.21 学生答案 d 参 a 2 以下程序中函数sort 的功能是对数组a中的数据进行由大到小的排序。...

课程作业 第8次

深基坑工程技术 课程作业。第 7 章土钉墙。1 土钉墙有哪些特点?土钉墙与土层锚杆有哪些相似和不同?1土钉墙有哪些特点?土钉墙与土层锚杆有哪些相似和不同?答 1.土钉墙有以下特点 1 土钉墙尽可能的保持并提高基坑侧壁土体的自稳定,土钉与土体形成一个密不可分的整体,共同作用,同时混凝土护面的协同作用也...