c++ - 将值传递给 C++ 中的运算符重载函数时会发生什么?
问题描述
我没看懂这段代码的编译步骤。首先,默认构造函数的目的是什么,为什么有这么多 MyClass 类型的对象? 链接到我保存代码的sololearn
#include <iostream>
using namespace std;
class MyClass {
public:
int var;
MyClass() { }
MyClass(int a)
: var(a) { }
MyClass operator+(MyClass &obj) {
MyClass res;
res.var= this->var+obj.var;
//'this' is refering to active (obj1)
return res;
}
};
int main() {
MyClass obj1(12), obj2(55);
MyClass res = obj1+obj2;
cout << res.var;
}
//I've not understood, its from a lesson
解决方案
没有参数的构造函数用于不传递任何值的对象,即存储两个操作数对象之和的对象。 - -简单的 - -
推荐阅读
- python-3.x - 如果字符串在键或值中匹配,则删除字典中的键和值
- python - 是否有选择指定字符串后的前 2 个单词的功能?
- java - 如何使用 JSON 格式发布 ManyToOne 和 OneToOne 实体?
- sql - SSIS 不插入多于一行
- c# - 如何使用 Fizzler / HtmlAgilityPack 选择具有命名空间的 html 元素?
- osgi - OSGi 中的 bytebuddy rebase 与子类和错误名称/NoClassDefFoundError
- data-binding - Haxe:具有抽象字段访问方法的绑定模式
- c - c语言中的ilogb()是什么?
- vue.js - 显示工具提示后如何阻止工具提示移动表中的数据
- vue.js - 如何在不同的Vue组件同时使用SocketIO事件