본문 바로가기
반응형

C++12

[C++ 11] Hash Map : HASH MAP Header not found [C++ 11] Hash Map : HASH MAP Header not found C++11에서 추가된 Hash map(해시맵)을 사용하려 시도하면 제목처럼 에러가 발생합니다. 좀 아쉬운 게 ext 폴더 내부로 이동해 놓아서 일반적인 C++ 11을 사용하는 방법으론 Hash Map(해시맵)을 못쓴다는 겁니다. 추후에 지원이 될련진 모르겠네요. 아래처럼 소스 코드 단 두 줄만 추가하면 hash_map 사용이 가능합니다. 123#include using namespace __gnu_cxx;cs [C++ 11] Hash Map : HASH MAP Header not found 2017. 12. 7.
[C++ 최적화] Const, 가상함수, 변수 등으로 속도 최적화 [C++ 최적화] Const, 가상함수, 변수 등으로 속도 최적화 C++ 최적화 : 속도 최적화(Speed Optimizations)모든 애플리케이션은 CPU 사이클이 시간 때문에 중요하다. 이 포스팅에선 C++ 최적화 중 속도를 위한 몇 가지 지침을 제시한다. C++ 최적화 : 긴 인수 리스트를 압축하기 위해 클래스 사용함수의 인수 리스트가 길 때, 함수 호출 오버헤드가 증가한다. 런타임 시스템은 스택을 인수들의 값으로 초기화해야 한다. 당연히 이 동작은 인수가 많을수록 오래 걸려 C++ 최적화에 방해된다. 예를 들어, 아래 함수를 100,000,000번 수행하면 내 컴퓨터에서는 평균 8.5초가 소요된다. 123456void retrieve(const string& title, //5 arguments.. 2017. 12. 1.
[배열 초기화 C++] static const char 초기화 [배열 초기화 C++] static const char 초기화 배열 초기화하는 방법은 간단합니다. 12345// headerstatic const char kEXAM[]; // cppconst char ClassName::kEXAM[] = { 'E', 'X', 'A', 'M', '0', '1' };cs 헤더 파일에 상수화 시킬 변수를 선언만 해주세요.이때, 배열 초기화 대상의 배열의 크기를 미리 지정해도 됩니다. 12345// headerstatic const char kEXAM[6]; // cppconst char ClassName::kEXAM[6] = { 'E', 'X', 'A', 'M', '0', '1' };cs 저라면, 아직 개발 단계고 배열의 크기가 확정되지 않았다면, 배열 초기화를 위해 크기는.. 2017. 11. 23.
인라인함수로 프로그램 코드 최적화 (C++ inline함수) 인라인함수로 프로그램 코드 최적화 (C++ inline함수) C++ 코드 최적화를 할 때 프로그램 코드엔 인라인함수가 있어야 합니다. C++ 객체지향 프로그래밍에 인라인함수가 갖는 장점을 적극적으로 활용하기 위함이죠. 이 포스트에선 함수 호출할 때 발생하는 오버헤드를 해결하는 인라인함수를 설명합니다. 프로그램 코드 최적화로 실행 속도를 개선하려면 반드시 인라인함수 사용이 필요합니다. 10.4 인라인함수들(Inline Functions) 인라인함수들은 함수 호출 때문에 초래되는 오버헤드를 제거할 수 있으며 여전히 보통의 함수들의 장점들을 제공한다. 그러나, 인라인화 하는 것은 만병통치약이 아니다. 어떤 상황들에서, 그것은 프로그램의 성능을 저하할 수도 있다. 이러한 특징을 현명하게 사용하는 것이 중요하다... 2017. 9. 8.
반응형