在C++中,可以通過重載賦值運算符(=)來實現自定義類型的Assign操作。以下是一個示例:
#include <iostream>
class MyType {
public:
int value;
MyType(int v) : value(v) {}
// 重載賦值運算符
MyType& operator=(const MyType& other) {
if (this != &other) {
value = other.value;
}
return *this;
}
};
int main() {
MyType a(10);
MyType b(20);
std::cout << "Before assignment: " << a.value << " " << b.value << std::endl;
b = a; // 調用重載的賦值運算符
std::cout << "After assignment: " << a.value << " " << b.value << std::endl;
return 0;
}
在上面的示例中,MyType
類重載了賦值運算符,當進行b = a
的操作時,會調用重載的賦值運算符來實現自定義類型的Assign操作。