목록2024/02/06 (2)
사이먼's 코딩노트
클래스와 메서드 그리고 상속을 통한 문제를 요구사항에 맞춰서 풀어보자. [문제] 문제 : 다음 요구사항에 맞는 클래스와 메서드를 생성해보세요. 요구사항 1 : 오리 생성하고 날아가는 능력을 부여하세요. 요구사항 2 : 청둥오리와 흰오리를 생성하고 날아가는 능력을 부여하세요. 요구사항 3 : 오리 계열(오리, 청둥오리, 흰오리)의 클래스에 '날다' 메서드가 중복되지 않도록 하세요. 요구사항 4 : 고무오리를 생성하고 날아가는 능력을 부여하세요. 요구사항 5 : 고무오리 계열에게 날아가는 능력을 뺏어주세요. 요구사항 6 : 고무2오리를 추가 생성해주세요. 요구사항 7 : 고무오리 계열의 클래스에 '날다' 메서드가 중복되지 않도록 하세요. 요구사항 8 : 로봇오리를 생성하여 오리계열과 고무오리계열의 능력을 반..
[포인터를 사용하는 이유] 변수는 본질적으로 공간이다. 공간은 본질적으로 옮길 수가 없다. 그렇게 때문에 어떤 변수에 있는 값을 누군가에게 공유할 때는 주소(포인터)를 사용할 수 밖에 없다. 주소가 바로 포인터이다. 주소를 담는 변수는 포인터 변수라고 한다. [2중 포인터] 2중 포인터는 말그대로 주소를 2번 옮겨서 어떤 변수의 있는 값을 공유하는 것이다. 아래는 2중포인터를 활용하여 change라는 함수를 통해 기존에 있던 값을 바꾸는 코드이다. #include void change(int** num) { **num = 50; } int main(void) { int x = 20; int* p = &x; printf("change 함수 호출하기 전의 x : %d\n", x); change(&p); pr..