Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- Programming
- 알고리즘
- game dev
- untiy
- C
- c#
- rendering
- 다익스트라
- Serialize
- unity #graphics
- C++
- Unity
- Addressables
- Game Development
- graphics
Archives
- Today
- Total
Typing diary
c++ 연산자중복 본문
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | #include <iostream> using namespace std; class ex { int var1 = 0; int var2 = 0; public: ex& operator +(ex& op1); //이항 연산자 함수 선언 (연속적으로 연산가 작동하게 하기 위핸선 리턴 타입을 ex&와 같이 선언 해야함) ex operator ++(); //단항 전위 연산자 함수 선언 //ex operator ++(int x); 단항 후위 연산자 함수 선언 friend ex& operator+(int op1, ex op2); //friend를 이용한 연산자 함수 선언 }; //이항 연산자 함수 구현 ex& ex::operator+(ex& op1) { ex tmp; tmp.var1 = var1 + op1.var1; tmp.var2 = var2 + op1.var2; return tmp; } //단항 전위 연산자 함수 구현 ex ex::operator++() { var1++; var2++; return *this; } //friend를 이용한 연산자 함수 구현 ex& operator+(int op1, ex op2) { ex tmp; tmp.var1 = op1 + op2.var1; tmp.var2 = op1 + op2.var2; return tmp; } int main() { ex a ,b,c; c = a + b; //컴파일러가 a.+(b); 식으로 변형시킨다. c = a + b + c; //연속적으로 사용 가능 } | cs |
'C, C++' 카테고리의 다른 글
String의 작동원리(c++) (0) | 2022.08.17 |
---|---|
void 포인터 (0) | 2022.08.16 |
c++ static멤버 (0) | 2022.08.16 |
명품 c++ programming 6장 8번 (0) | 2022.08.16 |
명품 c++ programming 7장 Open Challenge (0) | 2022.08.16 |