如果类类型是按值调用的函数的参数,则会调用该类的重载赋值运算符吗?
if a class type is parameter of a function which is called by value, will the overloaded assignment operator of the class get called?
让A
类具有重载operator=
如果我调用一个具有按值A
参数的函数,重载operator=
会被调用吗?
否 不会调用其赋值运算符。
将调用复制构造函数。
这就是复制构造函数的目的,通过接收相同类型的对象来创建该类型的副本。按值传递是始终调用复制构造函数的典型情况。
相关文章:
- 为用户定义的类正确调用复制构造函数/赋值运算符
- 为什么初始化时没有调用重载赋值运算符?
- 为什么我需要三个嵌套的大括号来调用赋值运算符,将const引用到二维数组
- 使用赋值运算符将宏转换为函数调用
- 从赋值运算符调用构造函数
- 赋值运算符重载在通过指针访问时不调用
- 为什么为单个赋值操作调用复制构造函数和重载赋值运算符
- 在其赋值运算符方法中调用对象的析构函数
- 为什么在没有赋值运算符的情况下调用转换构造函数
- 未调用移动赋值运算符
- 初始化对象后,用隐式转换而不是赋值运算符调用构造函数有什么意义
- C++重载赋值运算符在不相关的类中被调用
- 为什么deque::erase()调用赋值运算符
- C++ 不调用赋值运算符
- 正在数组上调用赋值运算符
- 为什么调用赋值运算符会触发销毁函数
- 为C++中具有多个继承派生类的vtables的基之一调用赋值运算符
- 为什么这里不调用赋值运算符?
- 为什么在这种情况下不调用赋值运算符以支持复制构造函数
- 可以 std::set::insert() 调用赋值运算符