프로그래밍/c++

c++17 if statement with initializer

제페 2018. 8. 22. 12:58
반응형
if(init; statement)
{
// ...
}


이런식으로 쓸 수 있다.

using namespace std;

map<int, string> m = {
{1, "a"},
{2, "b"},
{3, "c"}
};

if(auto i = m.find(1); i == m.end())
{
// not found
}


for문에 초기화 구문이 있는 것처럼, if문에도 초기화 구문을 지원하는 것이다. 

반환값이 iterator인 것이 많은데 이 부분에서 좀 더 깔끔한 코드 작성이 가능해질 것이라 생각한다.

반응형