반응형
하이염
한국인을 위한 코드 미리보기부터 가겠습니다.
#include <iostream>
class Complex
{
private:
int real;
int image;
public:
Complex(int r = 0, int i = 0) : real(r), image(i) {}
~Complex() = default;
Complex operator+(const Complex& _val)
{
return Complex(real + _val.real, image + _val.image);
}
Complex operator-(const Complex& _val)
{
return Complex(real - _val.real, image - _val.image);
}
Complex operator++()
{
return Complex(++real, ++image);
}
Complex operator++(int)
{
return Complex (real++, image++);
}
friend std::ostream& operator<< (std::ostream& _os, const Complex& _class);
};
std::ostream& operator<< (std::ostream& _os, const Complex& _class)
{
_os << _class.real << " + " << _class.image << "i" << '\n';
return _os; // 뒤로 연계할 수 있도록 cout을 계속 연결해준다.
}
int main()
{
Complex x(10, 20), y(20,40);
Complex z;
std::cout << x;
std::cout << y;
std::cout << x++;
std::cout << ++x;
z = x + y;
std::cout << z;
z = y - x;
std::cout << z;
}
ㅁㅊ 클래스끼리 더하기 뺴기를 할 수 있다니 ㅋㅋ ㄷㄷ
operator 연산자라는건 쉽게말하면 연산자의 역할을 직접 정해줄 수 있게 해주는 고마운 애다.
반응형
'프로그래밍 > C++' 카테고리의 다른 글
[C++] String 클래스 구현해보기 (0) | 2024.07.26 |
---|---|
[C++] DFS 구현해보기 (0) | 2024.07.10 |
[C++] 중첩 클래스를 알아보자.araboza (0) | 2024.06.12 |
[C++] friend에 대해 알아보자.araboza (0) | 2024.06.12 |
[C++] const, 근데 class를 곁들인 (0) | 2024.06.11 |