operator+ 함수 질문
361
작성한 질문수 57
일반 함수에서는 덧셈을 할 때
함수에 인자 2개를 넣고 리턴시키는데
operator+는 const Position& arg로 인자가 하나잖아요
근데 어떻게 2개를 더한값이 리턴이 되나요?
operatro+안에있는 pos랑 main함수안에있는 pos랑 다른거아닌가요?
밖에서는 pos를
pos._x = 0;
pos._y = 0;
으로 초기화시켰는데 operator+안에서만든 임시객체 pos는
뭔값을 가지고있는지 모를거같은데 이 부분이 잘 이해가 안됩니다.
답변 2
0
지금은 class Position 안에 operator+가 정의되어 있다는 차이가 있습니다.
즉 일반 함수가 아닌 멤버 함수라는 것이죠.
말씀대로 '일반' 함수라면 덧셈을 할 때 함수에 인자 2개를 넣고 리턴시키지만,
멤버 함수는 그런 개념이 아니라, 첫번째 인자가 '숨겨져' 있고
그 '숨겨진' 인자는 무조건 해당 class로 만든 객체다! ~라고 생각하시면 됩니다.
멤버 함수 내에서는 멤버 변수에 자유롭게 접근할 수 있기에 (정확히 말하면 this 포인터로..)
pos._x나 pos._y에 접근할 수 있는 것입니다.
visualstudio에서 파일분할관리실습시 설정 문의를 드립니다.
0
546
1
정렬함수 좀 더 확실하게 이해 할 방법이 있을까요?
0
445
1
strcpy() 구현 관련 질문
0
518
1
빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?
0
460
1
클래스 타입의 포인터 질문합니다
0
550
1
입력값을 enum 값에 넣어주는거 이제 막혔나요?
0
501
1
템플릿 특수화 관련 질문
0
387
1
포인터 관련 질문합니다!
0
267
1
Unable to start assembler. Check your settings.
0
839
2
cpu선택
0
543
1
포인터 질문이 있습니다
0
330
1
20:35 에서 구조체 크기에 대한 질문입니다!
0
588
1
iterator 삭제관련
0
410
1
함수 호출을 디스어셈블러로 분석하다가 궁금점이 생겼습니다!
0
315
1
15 분 45초 대 질문
0
312
0
스택 프레임 질문합니다!
2
309
1
오른값 참조 in 게임
0
387
0
동적할당 질문이 있습니다
0
452
1
안녕하세요 메모리에 대해 질문드립니다.
0
309
1
함수객체 의 매개변수
0
365
1
복사생성자
0
439
1
main이나 endl 부분이 주황색으로 표시된건 어떻게 하나요
0
426
1
포인터 실습 강의를 보고 궁금한게 있습니다.
0
358
1
스택 오버플로우
2
794
1





