일상 코딩
[C++/9.05] 증감 연산자 오버로딩 본문
728x90
증감 연산자 작동 원리를 이 예제를 통해 확인 할 수 있다.
#include<iostream>
using namespace std;
class Digit
{
private:
int m_digit;
public:
Digit(int digit = 0)
: m_digit(digit)
{}
// prefix
Digit &operator ++ ()
{
++m_digit;
return *this;
}
// postfix
Digit operator ++ (int)
{
Digit tmp{m_digit};
++(*this);
return tmp;
}
friend ostream &operator << (ostream &out, const Digit &d)
{
out << d.m_digit;
return out;
}
};
int main()
{
Digit d{5};
// prefix
cout << ++d << endl;
cout << d << endl;
// postfix
cout << d++ << endl;
cout << d << endl;
return 0;
}
728x90
'C++ > 따배C++ 09강 연산자 오버로딩' 카테고리의 다른 글
[C++/9.07] 괄호"()" 연산자 오버로딩과 함수 객체 Functor (0) | 2021.10.30 |
---|---|
[C++/9.06] 첨자"[]" 연산자 오버로딩 (0) | 2021.10.30 |
[C++/9.04] 비교 연산자 오버로딩 (0) | 2021.10.29 |
[C++/9.03] 단항 연산자 오버로딩 (0) | 2021.10.28 |
[C++/9.02] 클래스 입출력 연산자 오버로딩 (0) | 2021.10.28 |