: 다형성(polymorphism), 연산자 오버로딩(operator overloading), Canonical 클래스 양식(Orthodox Canocical class form)등을 하는 과제이다.
: 복사 생성자와 복사 대입연산자가 무엇인지와 둘의 차이점을 알 수 있는 곳
링크 : https://coding-factory.tistory.com/701
링크2 : https://link2me.tistory.com/1755
: <<를 오버로딩 하는 것, 연산자 오버로딩에 대해서 모른다면 한번쯤 보면 좋다.
: 여기서부터 class의 양식에 4가지가 무조건 들어가야 한다. 매번 만들기가 너무 힘드니 extension을 깔아주는 것이 좋다.
• 기본 생성자
• 복사 생성자
• 복사 할당 연산자
• 소멸자
vscode의 extension에서 canonical을 치면 아래와 같이 나오고 사용을 하면 된다. 단축키등은 details에 있으니 참고하면 된다. 사용을 하게 되면 class와 cpp파일이 만들어진다.
: 부동소수점을 공부하는 문제 같지만 사실은 복사 연산자와 복사 대입 연산자를 공부하는 문제이다.(물론 부동소수점도 무조건 공부해야 문제를 풀 수 있다.)
부동 소수점 관련 내용은 여기를 참고하자
링크 : https://steemit.com/kr/@modolee/floating-point
부동소수점을 숫자를 적어서 어떻게 나오는지 확인하고 싶다면 아래를 확인하자, IEEE754 변환기이다. 참고로 IEEE 754방식의 지수 부분은 해당되는 지수 + 127이다. 이 방식이 이런식으로 기입한다고 생각하고 보면 이해가 편하다.
링크 : https://www.h-schmidt.net/FloatConverter/IEEE754.html
: 여기서는 함수의 오버로딩에 대해서 공부를 하게 된다.
: operator 연산자를 만드는 것에 대해서 공부를 하게 된다.
: 복사 생성자, 복사 대입 연산자, 연산자 오버로딩 등 생소하고 구조도 익숙하지 않은 대상들이 많았다. 익숙해지는 시간이라고 생각하고 여러번 접하다 보니 조금은 친숙해진 느낌이다.
: 부동 소수점을 제대로 알아 본적이 없었는데, 이번을 계기로 컴퓨터가 정확하지 않은 연산을 할 수도 있다는 것을 알게 되었다. 특히나 코인의 경우에는 이를 방지하기 위하여 단위자체를 다르게 쓰는 것을 왜 그렇게 쓰는지에 대해서 알게 되었다.
(비트코인의 경우 사토시가 존재한다) 한번쯤은 알고 지나갔어야 했는데 이번을 통해서 알게 되어서 좋다고 생각한다. 가끔 까먹을 때마다 다시 한번 복습해야겠다.
: 사실 이게 아직도 조금은 헷갈린다. 볼때마다 이해는 가지만 둘은 상당한 차이가 있다는 것을 알게 되었다. 향후에 과제를 할때도 해당되는 부분이 나올 것이라고 생각된다.