본문 바로가기

반응형

System Programmings

(80)
프로그램 속도 측정 프로그램의 속도 측정을 위한 간단한 로직이다. 클래스를 활용하여 함수 시작 부분에 코드 삽입 후 함수가 끝나는 경우 소멸자에 의해 시간을 표시한다.부정확한 시간을 표기하지만 간단하여 쉽게 사용 할 수 있다. #include #include using namespace std; class loadTime { public: loadTime(); ~loadTime(); private: clock_t before; double result; }; loadTime::loadTime() { before = clock(); } loadTime::~loadTime() { cout
동적 할당 방법 메모리 릭을 방지하기 위해 할당된 메모리는 할당된 함수 범위 내에서 해제하는 것을 원칙으로 삼는 것이 좋다. 1. malloc Byte 만큼 메모리를 할당한다 초기값 : 쓰레기값 주의 : 할당 뒤 바로 memset등으로 0값 초기화시에는 calloc 사용이 바람직char *memory = (char*)malloc(sizeof(char) * 10); free(memory); 2. calloc Byte 만큼 메모리를 할당한다 초기값 : 0 주의 : 0값 초기화가 필요 없거나 다른 값으로 초기화시에는 malloc 사용이 바람직 char *memory = (char*)calloc(sizeof(char), 10); free(memory); 3. new Type 만큼 메모리를 할당한다 초기값 : 쓰레기값 주의 : ..
[Qt5] 32비트에서 64비트로 프로젝트 변경하기 Qt를 사용하면서 기본으로 32비트 개발용으로 많이 테스트를 했다. 근데, 32비트를 사용하는 컴퓨터보다는 64비트로 사용하는 컴퓨터가 많아졌기 때문에 프로젝트를 64비트로 변경하고 싶어졌다. Visual Studio 2013에서 Qt 프로젝트를 열고 64비트로 빌드하려고 했더니, 이게 막상 에러만 내뿜어서 해결책을 찾아봤다. 32비트 빌드에서 64비트 빌드로 프로젝트 변경하기 1. 프로젝트 백업 잘못 설정되는 경우를 위해 백업은 반드시 필수다. 2. x64 플랫폼 생성 프로젝트를 열고 솔루션 플랫폼에서 x64가 없다면 구성 관리자로 들어가서 x64용 플랫폼을 생성해야 한다. 구성 관리자는 아래 이미지의 콤보박스를 누르면 메뉴가 나타난다. 구성 관리자 화면에서 활성 솔루션 플랫폼 박스를 선택하고 새로 만..
[C++] 클래스 객체간의 연산을 도와주는 operator C++에서 일반적으로 만들 수 있는 기본 타입의 변수들은 사칙 연산 및 비교 연산 등을 직관적으로 할 수 있다. 아래의 코드를 보다시피, 바로 더하기, 빼기, 크거나, 작거나 등의 비교가 쉽다. int a = 10; int b = 20; int sum = a + b; int minus = a - b; if(a > b) cout Ramen > obj.PotatoChip + obj.Pringles + obj.Pringles) return true; return false; } bool Market::operatorPotatoChip + this->Pringles + this->Ramen < obj.PotatoChip + obj.Pringles + obj.Pringles) return true; return ..
[Qt5] Visual Studio2013에서 Qt MSVC-64bit 빌드하는 방법 소개 Qt5 설치할 때 32Bit와 64Bit 컴포넌트를 제공한다.32Bit로 개발하면 32Bit OS던지, 64Bit던지 상관 없이 개발 할 수 있지만, 진정한 64Bit Qt를 개발하고 싶은 경우에는 64Bit로 빌드된 컴포넌트로 빌드해야만 한다.물론, 32Bit OS에서의 호환성을 잃게 되지만, 대형 프로그램을 개발한다면, 속도의 이득을 얻을 수 있겠다. 이제 VisualStudio를 통해 Qt5 64Bit 컴포넌트로 빌드하는 방법을 소개하겠다. 개발 플랫폼기본 설치 환경Windows 8.1 x64 한글Visual Studio 2013 (x86)Qt5 (VisualStudio2013용 MSVC-64Bit) 개발 대상 플랫폼Windows 64bit GUI Programs. 64Bit 빌드 방법 1. ..
[Qt5] Qt 실행시 dll 에러 해결 방법 소개 Visual Studio에서 Qt 프로젝트를 생성하고, 정성껏 코드를 작성했다.그런데 막상 만든 프로그램을 Visual Studio 없이 단독으로 실행시키면 dll이 없다면서 에러를 뿜어낸다.Qt를 처음 하는 개발자들이 겪는 문제다. 그래서 이 문제를 어떻게 해결하는지에 대해 설명하려 한다. Qt Static 빌드와 Dynamic 빌드 Qt에서는 2가지의 빌드 방법이 있는데, Static 빌드와 Dynamic 빌드다.Static 빌드를 하면 윈도우에서 바로 실행이 가능해진다.Dynamic 빌드를 하면 개발한 exe파일과 exe파일 실행에 필요한 dll 파일이 필요하게 된다. 즉, Static 빌드는 개발한 프로그램을 실행하는데 필요로하는 모든 내용들을 포함시켜서 빌드하게되며, 용량이 커지게 된다.D..
[Qt5] Qt5 설치 및 Visual Studio 연동하기 소개 Qt는 크로스 플랫폼을 지원하는 프레임워크이며, 널리 알려져있다.윈도우, 리눅스, 맥 등 여러 OS에 동일한 프로그램을 각 개발툴이 아닌 Qt 하나로 개발이 가능하게 해주는 크로스 플랫폼을 지원하는 프레임워크다. 설치 환경 및 개발 플랫폼 기본 설치 환경Windows 8.1 x64 한글Visual Studio 2013 (x86) 개발 대상 플랫폼Windows 32bit GUI Programs. 설치 파일qt-opensource-windows-x86-1.6.0-5-online.exeqt-vs-addin-1.2.3-opensource.exe 설치 1. 설치 파일 다운로드 Qt5 홈페이지 방문해서 최신 버전을 다운 받으면 된다. (Qt 홈페이지 : www.qt.io / qt-project.org)여기서는..
[C++] MS에서 사용하는 헝가리안 표기법 Hungarian Notation Win32 follows a notation convention called Hungarian Notation. In Hungarian Notation the first character or first several characters of a variable or parameter name identifies that variable or parameters type. Here are some of the most common Hungarian Notation prefixes: b or f—used as a prefix for booleans (f stands for flag). c—used as a prefix to chars.1 n—used as a prefix ..

반응형