引用:编程题01
Posted begin-again
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了引用:编程题01相关的知识,希望对你有一定的参考价值。
题目:
设计一个类Rect,要求有下列成员函数。
1) move();从一个位置移动到另一个位置
2) size(); 改变矩形大小
3) where(); 返回矩形左上角的坐标值
4) area(); 计算面积
Atention: where()成员函数返回矩形左上角的坐标,也就是两个参数,利用引用类型;
引用前需要初始化
1 #include <iostream> 2 using namespace std; 3 class Rect 4 { 5 int x,h; 6 int y,w; 7 public: 8 Rect(int x1,int y1,int h1,int w1) 9 { 10 x=x1; 11 y=y1; 12 h=h1; 13 w=w1; 14 } 15 void move(int x1,int y1) 16 { 17 x=x1; 18 y=y1; 19 } 20 void size(int h1,int w1) 21 { 22 w=w1; 23 h=h1; 24 } 25 void where(int &x1,int &y1)//引用 26 { 27 x1=x; 28 y1=y; 29 } 30 int area() 31 { 32 return w*h; 33 } 34 }; 35 int main() 36 { 37 Rect r(2,3,20,10); 38 int x,y; 39 cout<<"矩形面积:"<<r.area()<<endl; 40 cout<<"移动到(5,4)"<<endl; 41 r.move(5,4); 42 cout<<"改变宽为6,高为3"<<endl; 43 r.size(6,3); 44 r.where(x,y); 45 cout<<"左上角:("<<x<<","<<y<<")"<<endl; 46 cout<<"矩形面积:"<<r.area()<<endl; 47 return 0; 48 }
知识点:
1.引用=取别名
对引用的改动=对目标的改动
2.
int x; //初始化为引用x int &y=x; //数据类型 & 引用名(别名)= 已经定义的变量名
//x就是y,y就是x;对y的改动=对x的改动
/* 对指针的引用 */
int n=10; //变量n
int *pn = &n; //指针pn指向n
int *&rn = pn; //pn取别名为rn, rn是pn的引用
3. 对void的引用是不可以的
不可以引用的引用
不可建立引用的数组
没有空引用
以上是关于引用:编程题01的主要内容,如果未能解决你的问题,请参考以下文章