프로그래밍/C++ 스피비 2015. 2. 16. 14:29
constexpr는 변수, 함수, 클래스를 컴파일 타임에 정수로 사용할 수 있도록 해줍니다. 즉 상수로 취급할 수 있는 작업은 컴파일 타임에 처리하도록 할 수 있습니다. 참고 사이트 : http://jacking.tistory.com/1010
프로그래밍/C++ 스피비 2014. 12. 12. 10:23
특강명 : advanced C++ 강사님 : 강석민cafe.naver.com/cppmastersmkang@ioacademy.co.kr [2일차 수업 내용]1.inline2.object copy3.smart pointer 자료(cpp파일): 1.inline인라인 함수는 컴파일 시간 문법이다.인라인 함수라도 함수 포인터에 담으면 인라인 치환이 될수 없다!!!!(함수 포인터는 실행시간에 언제든 바뀔 수 있기때문에) 일반 함수는 자신만의 타입이 없다!즉! signature가 동일한 모든 함수는 같은 타입이다. = 리턴값과 매개변수가 같으면 같은 타입의 함수다!! 모든 함수 객체는 자신만의 타입이 있다!! 즉! signature가 동일해도 모든 함수객체는 다른 타입이다!!! (일반 함수와의 차이점이 중요) 좀 더..
프로그래밍/C++ 스피비 2014. 12. 4. 18:49
특강명 : advanced C++ 강사님 : 강석민cafe.naver.com/cppmastersmkang@ioacademy.co.kr [1일차 수업 내용]1.thiscall2.temporary object 3.const member finction4.conversion(변환 연산자 / 변환 생성자) 자료(cpp 파일) : 1. thiscall[수업내용]멤버함수 호출 원리 일반 함수 포인터에 멤버 함수의 주소를 담을 수 없다.일반 함수 포인터에 static 멤버 함수의 주소를 담을 수 없다.멤버 함수 포인터를 만드는 방법과 사용하는 방법 [정리]멤버함수 호출시 첫번째 인자로 this가 함께 넘어간다.API C 함수에서 함수로 인자 넘어가는것은 (callback함수) 반드시 this가 넘어갈 수 없으니 st..
프로그래밍/C++ 스피비 2011. 5. 23. 18:36
C++은 자바와 같은 가비지 컬렉션(GC) 기능이 없어서, new로 동적 할당한 객체를 매번 delete를 써서 수동으로 삭제해야 하는 건 아실 겁니다. 조심하지 않으면 엄청난 메모리 누수(leak)가 나버리는 버그가 발생할 가능성이 있죠. (이런 버그를 잡기위해서 바운즈 체커나 코드 가드와 같은 프로그램이 나온거죠.) 부스트 라이브러리의 스마트 포인터에 대한 문서는 다음 링크를 참고하세요. http://boost.org/libs/smart_ptr/smart_ptr.htm http://boost.org/libs/smart_ptr/shared_ptr.htm 위의 예제를 boost::shared_ptr을 써서 고치면 다음과 같습니다. void doSomething() { typedef boost::share..
프로그래밍/C++ 스피비 2011. 5. 23. 00:23
http://blog.naver.com/whitephenix?Redirect=Log&logNo=60030272192