반응형
auto
변수를 선언하기 위해 변수 이름 앞에 어떤 데이터 형으로 선언할지 변수의 데이터 형을 입력해야 했습니다. 하지만 객체 지향을 이용하는 개발자들은 데이터형을 하나하나 입력하는 것도 귀찮은게 사실입니다. 결국 개발자들은 컴파일러가 데이터에 따라 알아서 데이터 형을 정해주기를 바랍니다. 최근 이슈가 되고 있는 파이썬에는 어떠한 변수에도 데이터형을 입력하지 않습니다. 프로그램을 실행하면 자동으로 데이터 형을 정하는 것입니다.
C++11에서는 auto라는 기능이 추가되었습니다. auto를 활용하면 데이터 형을 컴파일러가 알아서 지정합니다. 대신 auto로 선언되는 변수는 선언과 동시에 초기화되어야하는 것이 조건입니다. 컴파일러가 초기화되는 시점에 데이터형을 결정합니다. 따라서 어떤 데이터형으로 선언할지 알아야 하기 때문입니다.
#include <iostream> using namespace std; int main() { auto text = "auto variable"; // char const *형 변수 cout << typeid(text).name() << endl; auto integer = 10; // int형 변수 cout << typeid(integer).name() << endl; return 0; } | cs |
실행 결과를 보면 다음과 같습니다. 처음에는 char const *가 출력되었습니다. 그 다음에는 int가 출력되는 것을 알 수 있습니다. auto를 이용해 변수를 선언한 후에 typeid 연산자를 이용해 각 변수의 타입을 출력하였습니다.
반응형
'SW > C++' 카테고리의 다른 글
[ C++ ] tuple 개념 및 예제 (1) | 2018.11.16 |
---|---|
[ C++ ] 스마트 포인터 개념 및 예제 (0) | 2018.11.16 |
[ C++ ] range base for 개념 및 예제 (0) | 2018.11.16 |
[ C++ ] Lambda 개념 및 예제 (0) | 2018.11.15 |
C++11은 무엇일까요? (0) | 2018.11.15 |