EC+面向对象程序设计 计算机与信息学院 罗宪
C++面向对象程序设计 计算机与信息学院 罗宪
:第二章C+面向过程部分内容回顾 ★不能建立指向引用的指针;如: int*&p;-—错误的定义。 (inti;int&j≡i;int*p=&;合法的定义 即为所指向变量的地址) ☆不能建立引用的引用。如: int&&x;错误的定义。 (inti;int&j=iint&k=j合法的定义)。 (引用的应用 1、用引用变量作为函数的形参 例【23】
第二章 C++面向过程部分内容回顾 不能建立指向引用的指针;如: int *&p ;—— 错误的定义。 (int i ; int &j=i; int *p=&j;——合法的定义, 即为所指向变量的地址); 不能建立引用的引用。如: int &&x;——错误的定义。 (int i; int &j=i;int &k=j;——合法的定义)。 ㈡ 引用的应用 1、用引用变量作为函数的形参 例【2.3】
:第二章C+面向过程部分内容回顾 #include <iostream.h> void swap(int &p, int &q) void maino tint x,: x=20y=30; cout <<X="<<X<< y=<<y cout<<endl: swap(x,y) cout <<"x="<<X<< y="<<y cout<<end: void swap(int &p, int &q) i int t t=p; p=g q=t
第二章 C++面向过程部分内容回顾 #include <iostream.h> void swap(int &p,int &q); void main() { int x,y; x=20;y=30; cout <<"x="<<x<<" y="<<y; cout<<endl; swap(x,y); cout <<"x="<<x<<" y="<<y; cout<<endl; } void swap(int &p,int &q) { int t; t=p;p=q;q=t; }
第二章C+面向过程部分内容回顾 2、引用作为函数的返回值 例[24】 a#include "iostream. h" a const int N=100 float &max(int n, float x float &min(int n, float x void array_in(int n, float xD void maino af int n float x[NI, ma, mi; s cout<<"Please enter array size(1-100): " cin>>n; array in(, x) ma=max(n, x) mI=min(n, X cout<<max="<<ma<< min="<<mi<<end:
第二章 C++面向过程部分内容回顾 2、引用作为函数的返回值 例【2.4】 #include "iostream.h" const int N=100; float &max(int n,float x[]); float &min(int n,float x[]); void array_in(int n,float x[]); void main() { int n;float x[N],ma,mi; cout<<"Please enter array size(1-100):";cin>>n; array_in(n,x); ma=max(n,x); mi=min(n,x); cout<<"max="<<ma<<" min="<<mi<<endl; }
:第二章C+面向过程部分内容回顾 void array_in(int n, float x) nt for(i=0; i<n i+ cout<< i<<"]=";cin>>x[i;} float &max(int n, float x[l) t int tatic float m. m=XIO Qr=1:i≤n;i++ if(m<x[il m=x[i: return m float &min(int n, float xID) int i static float m =X <n:I+十 if(m>x[i])m=x[l; return m
第二章 C++面向过程部分内容回顾 void array_in(int n,float x[]) { int i; for(i=0;i<n;i++) { cout<<"x["<<i<<"]=";cin>>x[i]; } } float &max(int n,float x[]) { int i;static float m; m=x[0]; for (i=1;i<n;i++) if(m<x[i]) m=x[i]; return m; } float &min(int n,float x[]) { int i;static float m; m=x[0]; for (i=1;i<n;i++) if(m>x[i]) m=x[i]; return m; }