Files
CSCI-1200/lectures/operators/overloading_non_member.cpp
Jidong Xiao 3da5d38338 renaming
2025-02-26 12:16:53 -05:00

32 lines
573 B
C++

// Overloading the output stream operator as a non-member function.
#include <iostream>
class MyClass {
private:
int value;
public:
MyClass(int val) : value(val) {}
// getter function to access private member
int getValue() const {
return value;
}
};
// overload the output stream operator as a non-member function
std::ostream& operator<<(std::ostream& os, const MyClass& obj) {
os << "Value: " << obj.getValue();
return os;
}
int main() {
MyClass obj(42);
// output the object using the overloaded operator
std::cout << obj << std::endl;
return 0;
}