
1. 모든 개념은
클래스를 메모리에 올려두고 작업을 시작한다.
2. 메모리를
Stack과 Heap의 구조로 나눈이유?
- stack은 순차적인 자료구조 : 정적 할당에 쓰인다. (int a)
- Heap은 이진검색을 통해 검색할 수 있는 무작위적인 자료구조 : 동적할당에 쓰인다.
(new char a[])
3. Access Method = Utility 함수
4. 캡슐화의 범위를 구성하는 요령?
-
변수를 기준(사용하는 데이터를 기준으로)
5. 동적할당영역을 사용할때 유의사항
- 직접 해제해줘야 한다.
6. 실제주소에는 주소값만..(4Byte)
- Point* arr[4] = arr[0] = 주소값.. 이런식?
7. 객체포인터를 지정한 후 동적할당
- pointer* p; p = new pointer(i*3);
8. 포인터를 지정한 후 new로 생성하는 이유
- 포인터만 지정 -> 실제메모리 할당은 new
9. 클래스 구성
- 정보은닉을 위한
Entity클래스, Entity클래스를
관리하기 위한
Control클래스로 보통구성한다.
10. 디자인 할 시 확실한 경계를 지어줘라
11. 실제 함수들은
Code Area에 저장되어 클래스가 지정하여 사용한다.
- add()함수일 경우
- void add() -> void add(A* a){ (a->n)++ }형식으로 컴파일러가 자동으로 바꿔준다.
12.
다중상속 - 가치가 없다고 생각한다. 모호성이 존재한다.
- 클래스 C가 A, B를 다중상속하고 Class A, B에는 String()이 존재한다고 할때 C가
String()함수를 불러온다면?
- 아래 예제를~~ 보면?
13. abort함수
- 예외의 타입이 맞지 않으면 콜!!
14.
예외클래스 형태가 유용하다.
- 여러정보를 같이 처리할 수 있다.
15. 작은 클래스의 예외로 부터 시작