编写程序定义Point类,有数据成员X,Y,为其定义友元函数实现重载+。
2010-05-31 16:40
363 查看
#include <iostream.h>
class Point
{
public:
Point() { X = Y = 0; }
Point( int x, int y ) { X = x; Y = y; }
void Print() { cout << "Point(" << X << ", " << Y << ")" << endl; }
friend Point operator+( Point& pt, int nOffset );
friend Point operator+( int nOffset, Point& pt );
private:
int X;
int Y;
};
Point operator+( Point& pt, int nOffset )
{
Point p = pt;
p.X += nOffset;
p.Y += nOffset;
return p;
}
Point operator+( int nOffset, Point& pt )
{
Point p= pt;
p.X += nOffset;
p.Y += nOffset;
return p;
}
void main()
{
Point pt( 10, 10 );
pt.Print();
pt = pt + 5; // Point + int
pt.Print();
pt = 10 + pt; // int + Point
pt.Print();
}
class Point
{
public:
Point() { X = Y = 0; }
Point( int x, int y ) { X = x; Y = y; }
void Print() { cout << "Point(" << X << ", " << Y << ")" << endl; }
friend Point operator+( Point& pt, int nOffset );
friend Point operator+( int nOffset, Point& pt );
private:
int X;
int Y;
};
Point operator+( Point& pt, int nOffset )
{
Point p = pt;
p.X += nOffset;
p.Y += nOffset;
return p;
}
Point operator+( int nOffset, Point& pt )
{
Point p= pt;
p.X += nOffset;
p.Y += nOffset;
return p;
}
void main()
{
Point pt( 10, 10 );
pt.Print();
pt = pt + 5; // Point + int
pt.Print();
pt = 10 + pt; // int + Point
pt.Print();
}
相关文章推荐
- 2,改写本章例2.1程序,要求: (1)将数据成员改为私有; (2)将输入和输出的功能改为由成员函数实现; (3)在类体内定义成员函数;
- 编写一个程序,定义一个职工类,输入3个职工的编号、姓名、工资和年龄, 类中的成员函数实现输入、输出,在主函数中定义对象,并计算输出3个职工的平均工资。
- 走进C++程序世界-------类的定义和使用(数据成员和方法成员,析构函数,构造函数,内联实现)
- 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。 编写构造方法,用于初始化n1和n2,再为该类定义 加(addition)、 减(su
- 走进C++程序世界-------类的定义和使用(数据成员和方法成员,析构函数,构造函数,内联实现)
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 第九周【项目1】在第8周项1的基础上(1)再定义一目运算符 -,-c相当于0-c(2)定义Complex类中的<<和>>运算符的重载,实现输入和输出,改造原程序中对运算结果显示方式,使程序读起来更自然
- Java实例 定义任务的一个发射小程序 实现Runnable接口并编写run()方法
- 【8.17】建立一个用来实现求3个数和的类模板(将成员函数定义在类模板的内部),并写出调用此类模板的完整程序。
- C++实例 静态成员的引入——静态数据成员的定义、调用,静态成员函数的实现、调用。
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; )编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 一个显示地图数据,并实现简单浏览查询程序源码(SDK编写)
- C++运算符重载(成员函数以及友元函数实现)
- [4.21]编写一个程序,已有若干个学生的数据,包括学号、姓名、成绩、要求输出这些学生的数据并计算出学生人数和平均成绩(要求将学生人数和总成绩用静态数据成员表示)。
- 第九周实验任务二--定义Complex类中的<<和>>运算符的重载,实现输入和输出,使程序读起来更自然
- 11.8 编写一个程序,有一个汽车类 vehicle,它具有一个需传递参数的构造函数,类 中的数据成员:车轮个数 wheels 和车重 weight 放在保护段中;小车类 car 是它的私有派生 类,
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 1)编写Animal接口,接口中声明run()方法; 2)定义Bird类和Fish类实现Animal接口; 3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
- 编写Animal接口,接口声明run()方法定义Bird类和Fish类实现Animal接口编写Bird类和Fish类的测试程序,并调用其中的run()方