Assert 의 모든 것!
런타임 ASSERT, VERIFY, 그리고 TRACE Using ASSERT(), VERIFY(), and TRACE() in non-MFC Applications에 따르면 ASSERT, VERIFY, TRACE 는 다음과 같은 차이를 보인다. ASSERT(expr)는 TRUE, FALSE(0)로 판별 가능한 표현식을 매개변수로 받는다.…
런타임 ASSERT, VERIFY, 그리고 TRACE Using ASSERT(), VERIFY(), and TRACE() in non-MFC Applications에 따르면 ASSERT, VERIFY, TRACE 는 다음과 같은 차이를 보인다. ASSERT(expr)는 TRUE, FALSE(0)로 판별 가능한 표현식을 매개변수로 받는다.…
프로그램을 개발하고 유지보수하다 보면 버그가 있기 마련이다. 게임 속의 캐릭터가 벽을 뚫고 지나간다던가, 퀘스트 조건이 충족됐는데도 보상이 이뤄지지 않는 일이 생긴다. 버그야 가지각색이지만 그 중에서도 가장 곤란한 상황은 프로그램이 죽는…
문제 팩토리얼 !n 을 구현해보라. 컴파일 타임에 값 구하기 wikipedia:Template_metaprogramming|템플릿 메타프로그래밍에 제시된 팩토리얼은 다음과 같다. template <int N> struct Factorial { enum { value = N * Factorial<N - 1>::value…
#include <iostream> using namespace std; class Window { public: Window() { Create(); } virtual ~Window() { Destroy(); } virtual void Create() { cout << "Base class Window" << endl; }…
문제 주어진 정수를 컴퓨터에서 내부적으로 표현할 때 1로 설정된 비트의 수를 반환하는 함수를 작성하라. 해결책 1 정수값에 따른 1의 개수를 미리 계산해놓는 방법이 있다. int numOnesInBinary(int number) { if(number ==…
질문 동일한 역할을 하는 C++ 코드가 두 개 있다. 아래 코드를 보고 문제점을 찾아내고 어느 쪽을 선호하는지, 그 이유는 무엇인지 설명하라. // C++ void reserve(const Bus& bus) { wchar_t buf[100];…
질문 상수로 정의한 원주율 PI 값이 없다고 해보자. 원주율 값을 직접 구해야 한다면 어떻게 접근하겠는가? 해결책: 몬테카를로 몬테카를로 시뮬레이션(Monte CarloSimulation)이란 통계적 접근 방법이 있다. 1.먼저 정사각형 안에 한 꼭지점을 중심으로…
질문 어떤 자연수 n 이 소수인지 아닌지 판단하는 알고리즘을 기술하라. 참고 문헌 소수 구하기 (Finding Primes) 알고리즘 C 소수판단 알고리즘
프로세스 프로세스 우선순위: 클래스 ProcessInitializer 스레드 성능 개선하기 암달의 법칙 성능은 프로세서의 개수에 비례하지 않는다 싱글프로세서에서 작업시간 1이 걸리는 일을 프로세서가 5개인 머신에서는 작업시간이 1/5로 줄어야 하지만, 현실적으로 불가능하다. 왜냐하면,…
멀티코어 프로세서에서 병렬처리를 편리하게 해주는 TBB TBB는 태스크 기반 병렬처리를 지원하는 C++ 라이브러리 이다. TBB는 크게 알고리즘, 컨테이너, 메모리 할당자, 공유 자원을 보호하는 잠금 유틸리티, 태스크 스케줄러 등으로 구성돼 있다.…