[C++] using
👻 using
using
은 typedef
와 비슷하게 동작하지만 문법은 다르다.
// typedef
typedef __int64 id;
// using
using id2 = int;
🌱 장점
- 직관성이 뛰어나다.
함수 포인터 같은 경우 포인터 이름이 가운데에 위치해 있기 때문에 코드를 보기가 어려웠다.using
을 사용하면 조금 더 한 눈에 알아보기 쉽게 코드를 작성할 수 있다.
// typedef
typedef void (*MyFunc)();
// using
using MyFunc2 = void(*)();
- 템플릿 활용이 가능하다.
typedef
는struct
를 사용하여 템플릿을 활용할 수 있었지만 코드가 복잡하고 곧바로 활용할 수는 없었다.using
은 템플릿과 곧바로 활용이 가능하다.
// typedef
// 안 됨
/*
template<typename T>
typedef vector<T> List2;
*/
// using
template<typename T>
using List = list<T>;
// using 이전 방법
template<typename T>
struct List2 {
typedef list<T> type;
};
👻 글을 마치며
이번 시간에는 using에 대해 알아보았다. 맨날 using namespace std;만 쓰다가 다른 문법에 대해서도 알아보았는데 상당히 편리한 것 같다. 앞으로 자주 사용하게 될 것 같다.
Leave a comment