programing/C++56 임시객체 임시객체 : 객체를 인수로 사용하거나 반환할 때 임시로 생기는 객체 임시객체 생성 시점 인수로 사용할 때, 함수에서 반환할 때 cf. 임시객체를 인수로 사용시에는 컴파일러가 자동으로 최적화를 하여서 임시객체 다시 만들고 지우는 것 없이 그대로 전달 됨. ex. class CObj { public: CObj Func(CObj Obj) { return Obj; } }; void main(void) { CObj Obj; Func(Func(Obj)); } 함수 호출될 때 마다 지우고 삭제 하는 것 없이 반환된 임시 객체가 그대로 쓰임함수 호출 -> 임시객체1 생성(인수) ->임시객체2 생성(반환1) -> 임시객체 1 소멸 -> 반환 -> 함수호출(임시객체2가 그대로 레퍼런스 처럼 인수타고 함수로 들어감) -> .. 2016. 8. 2. INI 파일 함수 - 함수 #include UINT GetPrivateProfileInt( LPCTSTR lpAppName, // 섹션 이름 LPCTSTR lpKeyName, // 키 이름 INT nDefault, // 값을 가져올 수 없을 때 지정되는 기본 값 LPCTSTR lpFileName // INI 파일 이름 (전체 경로) ); // 반환 해당 섹션의 해당키의 값 > Ini파일의 정해진 섹션의 키 값 중 INT형을 가져옮 DWORD GetPrivateProfileString( LPCTSTR lpAppName, // 섹션 이름 LPCTSTR lpKeyName, // 키 이름 LPCTSTR lpDefault, // 값을 가져올 수 없을 때 지정되는 기본 값 LPTSTR lpReturnedString, // 결과 값 .. 2015. 6. 9. Registry 자료형, 함수 - Windows Registry > Ini 파일 시스템 64K를 초과할 수 없음 win.ini와 system.ini에 엔트리 추가시 파일 크기가 빠르게 증가 윈도우가 아이템을 순차 검색과 같은 직선적 탐색 수행 => 크기가 큰 Ini 파일 엑세스시 느려질 수 있음 쉽게 보호할 수 없고 네트워크를 통해서 원격 관리도 불가능 데이터 형식이 없음 => 문자열로 저장해야하고 프로그래머는 형변환 시켜야 함 서버 개발에서는 관리하기 편하다는 이유로 사용하는 경우도 있음 > 설정 파일 시스템이 레지스트리로 변경 계층구조 키에 엑세스하고 값을 구함 키는 값뿐만 아니라 서브키를 가짐 파일 시스템과 매우 유사 - 레지스트리 자료형 REG_BINARY 바이너리 데이터 REG_DWORD 32비트 수 REG_DWORD_LIT.. 2015. 6. 9. 형 변환 (type cast) - dynamic_cast > 서로 상속 관계에 있는 객체의 포인터나 레퍼런스끼리 형변환 > 일반적으로 (type*)으로 형 변환하는 방식 - static_cast > 논리적으로 가능한 형 변환 > 상속 관계에 있는 포인터끼리만 변환 - reinterpret_cast > 거의 제약이 없는 형 변환 > 서로 다른 형태의 포인터형끼리 바꿀 수 있고 일반 숫자도 포인터형으로 반환 가능 > 대신 이러한 변환에 대해서 컴파일러가 책임을 지지 않음 - const_cast > const가 있는 것을 const가 없는 것으로 바꿀 때 사용 2015. 6. 9. 이전 1 ··· 8 9 10 11 12 13 14 다음