먼저 XXX 사가지 없는 경고를 먼저합니다.
본 강의는 오강일수도 있으니 보다 정확한 문서를 확인 하시고 실전에 사용하시기 바랍니다.
auto
C언어 시절 이키워드는 플머가 파괴하지 않아도 자동으로 컴파일러가 알아서 파괴 해달라는 뜻으로 쓰였습니다.
그러나 이런 용도로는 별로 쓸모가 없습니다.
어차피 이키워는 지역변수에만 사용가능 했고 지역변수는 범위를 벗어나면 자동으로 박살나니까요....
C++에서는 변수의 타입을 컴파일러가 결정해달라는 뜻으로 사용됩니다.
베이직의 var처럼요.....
그래서 컴파일러는 변수에 처음 값이 설정될때 적당한 타입을 알아서 판단합니다.
왜 어런기능이 필요한가 하면 stl에서 반복자 같은 경우는 타입선언이 좀 복잡한게 아닙니다.
요럴때 쓰라고 만든겁니다.
cost, *, & 도 가능합니다.
decltype
요것도 auto와 비슷합니다.
컴파일러가 타입을 결정하라고 지시하는겁니다.
사용법이 auto와 전혀 다릅니다.
decltype(수식, 함수 원형) 변수;
형식으로 사용하는데, 수식이나 함수로 부터 타입을 유도 하고자 할때 사용합니다.
역시나 stl과 템플릿에서 타입을 결정하기 힘든 변수 선언에서 사용합니다.
위의 두키워드는 stl을 위해서 추가된 키워드라고 해도 무르가 없을 정도로 stl과 깊은 연관이 있습니다
언어의 core기능인데 라이브러리와 연계되는 문제가 있어서 적극적인 사용을 추천하기는 무리가 있을듯합니다
그럼
|
다음부터는 욕설이 포함된 경우 삭제처리하겠습니다.
지식을 나누는 것은 좋으나, 언어의 선택에는 유의해주시길 부탁드립니다.