实验15运算符重载
【实验目的】
通过本实验,掌握运算符重载的概念。
【实验要求】
熟练掌握运算符重载的使用技术。
【实验内容】
实现下面两个程序,注意“+”的重载用法。
1)定义运算符重载函数为友元函数。
#include<string.h>
#include<iostream.h>
classA{
private:
intx,y;
public:
A():x(0),y(0){}
A(inti,intj):x(i),y(j){}
A&operator=(constA&a){
if(this==&a)return*this;
x=a.x;y=a.y;
return*this;
}
friendAoperator+(constA&a,constA&b){
Am;
m.x=a.x+b.x;
m.y=a.y+b.y;
returnm;
}
voidf(){cout<<"x="<<x<<",y="<<y<<endl;}
};
intmain(){
Aa(1,2);a.f();
Ab(3,4);b.f();
Ac;c.f();
c=a+b;c.f();
return0;
}
2)定义运算符重载函数为成员函数。
#include<
c
string>
#include<iostream>
usingnamespacestd;
classA{
private:
intx,y;
public:
A():x(0),y(0){}
A(inti,intj):x(i),y(j){}
A&operator=(constA&a){
if(this==&a)return*this;
x=a.x;y=a.y;
return*this;
}
Aoperator+(constA&a){
Am;
m.x=a.x+10;
m.y=a.y+10;
returnm;
}
voidf(){cout<<"x="<<x<<",y="<<y<<endl;}
};
intmain(){
Aa(1,2);a.f();
Ab;b.f();
b=b+a;b.f();
return0;
}
分享到:
相关推荐
您可能感兴趣的文章:详解C++编程中的单目运算符重载与双目运算符重载C++运算符重载规则详解简介C++编程中的运算符重载c++ *运算符重载C++重载运算符的规则详解解析C++中不能重载为友元函数的四个运算符C++运算符...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
第1章 计算机与C++编程简介-------------------------------------------------1 1.1 简介--------------------------------------------------------------1 1.2 什么是计算机--------------------------------...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流介绍、常量、内联函数、命名控制、引用和拷贝构造函数、运算符重载、动态对象创建、继承和组合、多态和虚...
第三篇是C++面向对象编程篇,主要包括类和对象、继承、多态、运算符重载和输入/输出流等内容;第四篇主要介绍了C++高级特性,内容包括文件、命名空间和引用与内存管理;第五篇的内容主要是C++编程实践,主要分析了...
C++初学者比较好的一本参考书 本书是一本全面、易用的C++编程语言教程。作者用清晰、简洁的风格...每章中间的自测练习、章末的编程练习、丰富的实例、大量的代码等,都为读者提供了掌握C++编程概念所必需的实战演练。
(2)写出对运算符“+”、“”、“>>”进行重载的运算符重载函数的定义。 2、(17分)下列Base类是一个表示形状的抽象类,area( )为求图形面积的函数,total( )则是一个通用的用以求不同形状的图形面积总和的函数。 ...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简练的叙述讲解C++编程,别具特色。 全书共分十八章,内容涉及对象的演化、数据抽象、隐藏实现、初始化与清除、函数重载与缺省参数、输入输出流...
第3篇是C++面向对象编程篇,主要包括类和对象、继承、多态、运算符重载和输入/输出流等内容;第4篇主要介绍了C++高级特性,内容包括文件、命名空间和引用与内存管理;第5篇的内容主要是C++编程实践,主要分析了标准...
【C++ 语言】面向对象 ( 函数重载 | 运算符重载 | 运算符重载两种定义方式 | 拷贝构造方法 | RVO 优化 | NRVO 优化 ) : https://hanshuliang.blog.csdn.net/article/details/99632111 【C++ 语言】面向对象 ( 继承 ...
第三篇是C++面向对象编程篇,主要包括类和对象、继承、多态、运算符重载和输入/输出流等内容;第四篇主要介绍了C++高级特性,内容包括文件、命名空间和引用与内存管理;第五篇的内容主要是C++编程实践,主要分析了...
我刚花了8分下载, 重新将两个包压缩为一个完整的包, 用1分转出(主要是鼓励大家多发表评论或者共享资源, ...每章中间的自测题、章末的编程项目、丰富的实例、大量的代码,为读者提供了掌握C++编程概念所必需的实战演练。
第11章 运算符重载 11.1警告和确信 11.2语法 11.3可重载的运算符 11.3.1一元运算符 11.3.2二元运算符 11.3.3参数和返回值 11.3.4与众不同的运算符 11.3.5不能重载的运算符 11.4非成员运算符 11.5重载赋值符 11.6自动...
第3篇是c++面向对象编程篇,主要包括类和对象、继承、多态、运算符重载和输入/输出流等内容;第4篇主要介绍了c++高级特性,内容包括文件、命名空间和引用与内存管理;第5篇的内容主要是c++编程实践,主要分析了标准...
内容包括C++语言概述及编程基础、函数与函数模板、类与类模板、运算符重载、继承与派生、多态、异常处理以及C++标准库等。针对初学者的特点,书中主要结合实例讲解基本概念和编程方法,力求通过简洁的实例让读者快速...
本书系编程语言先驱者Ivor Horton的经典之作,是学习C++编程最畅销的图书品种之一,不仅涵盖了Visual C++ .NET编程知识,还全面介绍了标准C++语言和.NET C++/CLI。本书延续了Ivor Horton讲解编程语言的独特方法,...