C++ (비공개)/문법
std::queue 의 front() 사용시 empty 면 ?
[하마] 이승현 (wowlsh93@gmail.com)
2014. 8. 27. 20:45
C++ 경우는 정의되지 않은 행동을 합니다. (제작자에 따라서 다름) 따라서 항상 검사를 미리하고 사용해야합니다.
// queue::empty
#include <iostream> // std::cout
#include <queue> // std::queue
int main ()
{
std::queue<string> myqueue;
myqueue.front(); // <--------------- what happen ?
return 0;
}
P.S
제가 처음 프로그래밍 배울때 만든 큐는 리턴값이 bool 형이고 매개변수를 통해서 값을 반환하였습니다.
자바의 경우는 null 객체를 반환합니다.
Scala 언어의 경우는 예외를 반환합니다.
무엇이 좋은지는 각자 판단을 ~!