C++语言程序设计 例6-3对象数组应用举例 ∥ Point, h 数#if! define( POINT_ H define POINT H class Point i public: 组 Point(; Point(int Xx, int yy); aPoint void Move(int x, int y) int GetXo [return X int GetY freturn Y private int xY: x iendif
C++语言程序设计 26 例6-3 对象数组应用举例 //Point.h #if !defined(_POINT_H) #define _POINT_H class Point { public: Point(); Point(int xx,int yy); ~Point(); void Move(int x,int y); int GetX() {return X;} int GetY() {return Y;} private: int X,Y; }; #endif 数 组
16-2. cpp include<iostream> using namespace std include"Point h Point: Point X=Y=0; cout<< Default Constructor called. <<endl Point: Point(int xx, int yy) I XE=Xx YEyy; cout<< Constructor called, <<end Point : -Point i cout<<"Destructor called, "<<endl; y void Point Move(int x, int y) {X=x;Y=y;}
//6-2.cpp #include<iostream> using namespace std; #include "Point.h" Point::Point() { X=Y=0; cout<<"Default Constructor called."<<endl; } Point::Point(int xx,int yy) { X=xx; Y=yy; cout<< "Constructor called."<<endl; } Point ::~Point() { cout<<"Destructor called."<<endl; } void Point ::Move(int x,int y) { X=x; Y=y; } 27
include<iostream> include"Point h using namespace std; int maino cout<< Entering main.<<endl; Point A[2]=[Point(10, 10)1; for(int i=0; i<2; i++) A[]Move(i+10,i+20); cout<< Exiting main."<<endl; return o
#include<iostream> #include "Point.h" using namespace std; int main() { cout<<"Entering main..."<<endl; Point A[2]={Point(10,10)}; for(int i=0;i<2;i++) A[i].Move(i+10,i+20); cout<<"Exiting main..."<<endl; return 0; } 28
运行结果 Entering main Constructor called Default constructor called Exiting mains Destructor called Destructor called
运行结果: Entering main... Constructor called. Default Constructor called. Exiting main... Destructor called. Destructor called. 29
C++语言程序设计 头于内存地址 ●内存空间的访问方式 通过变量名访问 内存用户数据区 int i =3 通过地址访 2000 变量 2004 3010 x
C++语言程序设计 30 关于内存地址 ⚫ 内存空间的访问方式 – 通过变量名访问 int i; i=3; – 通过地址访问 内存用户数据区 2000 3 变量 i 2004 3010