조건문

    C++ if/switch statement with initializer

    0. 서문 지금까지의 C++에서 if 또는 switch의 평가식에 사용되는 변수는 미리 선언되고 적절히 초기화된 상태여야 한다. std::map에 원소를 추가하고 이에 대한 예외 처리를 하는 아래 예제가 일반적인 샘플이라 할 수 있다. #include #include int main() { std::map map; map["hello"] = 1; map["world"] = 2; // 일단 insert를 수행하고 결과 pair를 반환받아야 한다. auto ret = map.insert({ "hello", 3 }); // 그러고 나서, pair의 2번째 요소를 체크 if (!ret.second) std::cout