배열(array)
여러 개의 동일한 자료형의 데이터를 한꺼번에 만들 때 사용
int a1,a2,a3 ... ;
6개의 정수형 변수 각각 선언
int A[6];
배열로 6개의 정수형 변수 선언
배열은 동일한 이름을 사용하고 인덱스 번호로 각 항목을 접근할 수 있음
배열의 가장 기본적인 특징은 <인덱스,요소>쌍의 집합이라는 것
배열에서는 모든 요소가 동일한 자료형이며,인덱스를 사용하여 요소를 직접 접근할 수 있음
문자열:1차원 배열
문자 배열을 "hyeeum"로 초기화할 경우
char형 1차원 배열 사용
char A[5]="hyeeum";
2차원 배열
int A[4][3]
4개의 행과 3개의 열로 구성된 2차원 int 배열
int A[4][3]={ {1,2,3} , {4,5,6} ... };
배열 이름을 매개변수로 전달할 때 반드시 배열의 길이도 함께 전달되어야 함
2차원 배열을 매개변수로 보낼 때 반드시 가로 값(열)을 지정해야 함
클래스(class)
배열:같은 자료형의 데이터
구조체(struct):다양한 자료형의 데이터
클래스는 구조체를 확장한 개념
클래스란 객체를 정의하는 틀
class 클래스명 {
private:
멤버변수1;
멤버변수2;
...
public:
멤버함수1();
멤버함수2();
...
};
클래스는 객체의 속성을 나타내는 멤버 변수와 연산/동작을 나타내는 멤버 함수(메소드)로 이루어짐
멤버 접근 지정자
private : 현재 클래스의 멤버함수에서만 접근 가능
protected : 현재 클래스와 이 클래스의 자식 클래스 멤버 함수에서만 접근 가능
public : 모든 클래스나 함수에서도 이 멤버에 접근할 수 있음
접근 지정자 선언이 없으면 모든 멤버는 private이 된다
객체 생성 및 멤버 접근
Car myCar; //자동차 객체인 myCar 생성
myCar.gear=4;
항목 연산자: 멤버에 접근할 수 있음
생성자와 소멸자
생성자:객체 생성시 멤버 변수에 초깃값 제공
소멸자:객체가 파괴될 때 뒷마무리
멤버 초기화 리스트
클래스의 생성자 함수에서 데이터 멤버를 초기화하는 방법
1.생성자 함수 몸체에서 초기화
2.멤버 초기화 리스트
함수 오버로딩
함수이름의 중복을 허용함
디폴트 매개변수
매개변수에 디폴트 값을 부여
오버라이딩
자식 클래스에서 부모 클래스의 멤버 함수를 재정의