@ 16. 1 ~ 17. 1/C++
-
복사생성자의 호출시점@ 16. 1 ~ 17. 1/C++ 2013. 1. 1. 19:13
복사생성자가 호출되는 시점은 3가지로 구분할 수가 있다. 1. 기존에 생성된 객체를 이용해서 새로운 객체를 초기화하는 경우 2. 객체를 인자로 전달하는 경우 3. 객체를 반환하되, 참조형으로 반환하지 않는 경우 객체를 새로 생성해야하고 단 생성과 동시에 동일한 자료형의 객체로 초기화해야한다. 메모리 공간이 할당과 동시에 초기화되는 상황 1. int num1=num2; // 할당과 동시에 초기화 2. int Func(int n){} int main() { int num=10; Func(10); //호출되는 순간 매개변수 n이 할당과 동시에 초기화 } 3. int Func(int n){ return n;} // 반환하는 순간 메모리 공간이 할당되면서 동시에 초기화 int main() { int num=10;..
-
const 이야기 1부@ 16. 1 ~ 17. 1/C++ 2012. 12. 26. 23:54
const int num=10;변수 num을 상수화 1. const int *ptr = &val;포인터 ptr을 이용해서 val의 값을 변경할 수 없음 1. const가 포인터 자료형 앞에 붙었을때*ptr = 10; // 사용불가 지시하는 값은 변경할 수가 없다.ptr = &val; // 사용가능 다른변수를 지시할 수 있다. 2. int * const ptr2 = &val2;포인터 ptr2가 상수화가 됨 2. const가 포인터 자료형 뒤에 붙었을때*ptr2 = 10; // 사용가능 값을 변경 할 수 있다.ptr2 = &val; //사용불가 지시하는 변수를 변경할 수 없다.