Development/C, C++(556)
-
string 클래스, 클래스에서 객체를 생성하는 방법, string 클래스 도식도
string 클래스C++에서는 문자열을 나타내는 클래스를 제공하고 있으며 string은 문자열을 출력하기 위한 문자열 전용 객체입니다. 클래스에서 객체를 생성하는 방법
-
네임스페이스 정의 및 이름 공간 지정
네임스페이스 정의 및 이름 공간 지정· 네임스페이스 정의· 같은 이름 사용 가능· 이름 공간 지정 네임스페이스 정의namespace Graphics {int mode;int x, y, z;void draw();void message();}namespace Network {int mode;int speed;void send(char *);void message();} 이름 공간 지정Graphics::mode = 1;Network::mode = 1;
-
디폴트 매개변수(Default Parameter)
디폴트 매개변수(Default Parameter)main 함수 위에 정의해야 합니다.매개변수를 디폴트로 정의해서 호출 시 매개변수가 없어도 함수가 정상적으로 실행됩니다.
-
realloc( ) 함수와 free( ) 함수
realloc()함수를 이용한 동적 메모리 재할당 malloc( ), calloc( )함수는 동적 메모리를 할당 후 메모리 변경 불가 메모리 변경 불가한 단점을 realloc( ) 함수로 해결 종류함수반환 값메모리 할당 함수void* realloc(void* p, size_t size);성공 : 재할당된 메모리의 시작 주소 반환 실패 : NULL 반환
-
동적 메모리 할당 함수와 해제 함수
동적 메모리 할당 함수와 해제 함수stdlib.h 헤더파일 필요 (누락할 경우 경고메시지 발생)
-
동적 메모리 할당이 필요한 이유
동적 메모리 할당이 필요한 이유· 선언된 배열 요소의 수가 사용된 요소 수 보다 많은 경우 (메모리 낭비)· 선언된 배열 요소의 수가 사용된 요소의 수보다 적은 경우 (메모리 부족)· 배열 선언 시 배열 길이에 변수를 설정한 경우 에러 발생 선언된 배열 요소의 수가 사용된 요소 수 보다 많은 경우 (메모리 낭비)컴파일 타임에 미리 지정시 메모리 낭비 발생 int array[2]; // 선언된 배열 요소 수: 2개(8byte) array[0]=10, array[1]=20, array[2]=30; // 사용된 배열 요소 수: 3개(12byte) 배열 선언 시 배열 길이에 변수를 설정한 경우 에러 발생프로그래머가 필요한 메모리 크기를 예측할 수 없습니다. 따라서 동적 메모리 할당이 필요하게 됩니다.