본문 바로가기
C++

C++ 소스코드: This 포인터의 활용 예제

by 드린 2016. 11. 28.

목차

    반응형

    //This 포인터의 활용 #include<iostream> using namespace std; class X { protected: int m_data; public: void Print(); void Set(int data); bool IsEquivalent(const X& object); bool IsSame(const X& object); }; void X::Print() { //출력을 위한 함수 cout << "this= " << this << ", data= " << m_data << "\n"; } void X::Set(int m_data) { //protected 변수에 값을 집어넣기 위한 함수 this->m_data = m_data; } bool X::IsEquivalent(const X& object){ //클래스 객체의 값과 같은지 검사하는 함수 return (m_data == object.m_data); } bool X::IsSame(const X& object) { return (this == &object); } int main() { X obj; obj.Set(100); X obj2 = obj; if (obj.IsEquivalent(obj2)) cout << "값이 같습니다."; else cout << "값이 다릅니다."; cout << "\n"; if (obj.IsSame(obj2)) cout << "객체가 서로 같습니다."; else cout << "객체가 서로 다릅니다."; cout << "\n"; X& obj3 = obj; if (obj.IsSame(obj3)) cout << "객체가 서로 같습니다."; else cout << "객체가 서로 다릅니다."; cout << "\n"; return 0; }

    <결과>

    2016/11/28 - [C++] - C++ 소스코드: This 포인터 사용 예제

    2016/11/27 - [C++] - C++ 소스코드: 프렌드 함수를 이용한 스택 구현 예제

    2016/11/27 - [C++] - C++ 소스코드: 접근자 함수를 이용한 스택 구현 예제

    #C++ #C++ 소스코드 #This 포인터의 활용 예제 #실습 예제

    반응형