728x90 반응형 분류 전체보기465 [C++] 공용체와 열거체 / 포인터 공용체 서로 다른 데이터 형을 한번에 한가지만 보관할 수 있다. 마지막에 저장된게 float 형이기 때문에 결국에 test 공용체의 데이터타입은 float이고 intVal와 longVal는 float이 아니기때문에 쓰레기값이 출력되게 된다. 열거체 기호 상수를 만드는 것에 대한 또다른 방법 열거자들을 기호 상수로서 관리한다. 예시를 보면 red부터 ultraviolet을 0에서부터 7까지 정수값을 각각 나타내는 기호 사웃로 만든다. 한마디로 인덱스 값을 붙여준다고 생각하면 된다. orange는 1번째 수이기 때문에 1이 출력된다. blue는 4번째 수이니까 4가 출력되는데 이 b에 3을 더하면 7이 출력된다. 변수를 하나 생성해서 거기에 열거체의 상수를 대입한 후 연산은 가능하지만 spectrum b =.. 2022. 7. 1. [C++] 정적 멤버 (static) 색깔을 저장하는 클래스를 만들어볼 것이다. 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 48 49 #include #include using namespace std; class Color { public: Color() { r = 0; g = 0; b = 0; } Color(float r, float g, float b) { this->r = r; this->g = g; this->b = b; } float GetR() { return r; } float GetG() { return g; } float GetB().. 2022. 7. 1. [C++] 객체의 생성과 소멸 생성자와 소멸자 항상 생성자는 public으로 선언해줘야 한다! 생성자가 없을 때도 생성자는 호출되고, 소멸자도 호출된다. 이것을 디폴트 생성자, 소멸자라고 하는데 이것의 모양은 MyClass(){} 의 형태로 안에 내용이 아무것도 없다! 생성자의 기능은 멤버 변수를 초기화 하고, 소멸자의 기능은 메모리를 해제한다. 복소수 클래스를 만들어보자! 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 class Complex { public: Complex() { real = 0; imaginary = 0; } double GetReal() { return real; } double SetReal(double real) { th.. 2022. 7. 1. [재귀] 하노이탑 이동순서 이해하기 A에 있는 탑을 C에 똑같이 쌓으려고 한다. 무조건 가장 큰 애를 밑에서 부터 쌓으려면 어떻게 해야할까? 재귀의 핵심은 큰 틀만 파악해서 코드를 짜고, 나머지 서브 경우의 수들은 틀만 잘 짜놓으면 알아서 딸려오게 끔 만드는 것이다. 그러면 서브 경우의 수를 다 빼고, 가장 밑에 있는 파란색 블럭이 C에 오려면 어떻게 해야할까? 우선 나머지 3개 블럭이 B에 있어야 한다. 그러면 파란색 블럭이 C로 이동할 수 있다. 이제 두번째로 큰 노란색 블럭이 C에 와야한다. 그러면 나머지 2개 블럭이 A에 있어야 노란색 블럭이 C로 갈 것이다. 연두색 블럭또한 마찬가지이다. 나머지 한개의 블럭을 B에 놓고 A에 C로 이동하면 된다. 즉 이 문제에서 중요한것은 가장 큰 블럭을 C로 옮기기 위해 나머지 블럭을 어딘가에 .. 2022. 7. 1. 이전 1 ··· 13 14 15 16 17 18 19 ··· 117 다음 728x90 반응형