range based for


이번에 설명할 'range based for'는 'auto'와 더불어 C++11의 기능 중 유용하면서도 사용하기 쉽고 자주 사용하는 기능이다. range based for를 사용하면 반복문을 아주 쉽고 안전하게 사용할 수 있다.



<for문, range based for문 비교>




<range based for문에서 STL 컨테이너 사용>





<참조 사용하기>






enum


enum은 C++에서 이미 사용하고 있는 키워드다. 그러나 C++11에서는 C++03표준과 달리 'unscoped enumeration' 과 'scoped enumeration' 두종류의 enum으로 바뀌었다.






nullptr


nullptr은 C++11에서 추가된 키워드로, '널 포인터(NullPointer)'를 뜻한다.




nullptr이 필요한 이유


C++03까지는 널 포인터를 나타내기 위해 NULL 매크로나 상수 0을 사용했다. 그러나 NULL매크로나 상수 0을 사용하여 함수에 인자로 넘기면 int형으로 추론되어버리는 문제가 발생하기도 한다.



<함수 인자 추론 문제>





nullptr 사용방법


  




출처 : Thinking About C++ STL 프로그래밍 (최홍배 지음)


+ Recent posts