Mega Code Archive

 
Categories / C++ Tutorial / Class
 

Friend functions and operator overloading

#include <iostream> #include <string> using namespace std; class MyClass {     friend void Peek(const MyClass& aMyClass);     friend ostream& operator<<(ostream& os, const MyClass& aMyClass); public:     MyClass(const string& name = ""); private:     string m_Name; }; MyClass::MyClass(const string& name):     m_Name(name) {} void Peek(const MyClass& aMyClass); ostream& operator<<(ostream& os, const MyClass& aMyClass); int main() {     MyClass myObject("A");     Peek(myObject);     cout << myObject;     return 0; } void Peek(const MyClass& aMyClass) {     cout << aMyClass.m_Name << endl; } ostream& operator<<(ostream& os, const MyClass& aMyClass)    {     os << "MyClass Object - ";     os << "m_Name: " << aMyClass.m_Name;     return os; }