728x90

특징

- typedef 보다 직관적인 사용 방식

- 탬블릿 문법과 사용시 typedef 보다 더 궁합이 잘 맞는다.

- typedef 장점은.. 없다. 그냥 using 쓰세요..

 

사용 예제

#include <iostream>
#include <vector>
#include <list>
using namespace std;


// 직관성 - 가독성
typedef __int64 id;
using id2 = int; 

// 직관성 - 함수 포인터
typedef void (*MyFunc)(); // 매개변수와 리턴값이 없는 함수 포인터
using MyFunc2 = void(*)();

// tmeplate과의 궁합 - using (ok)
template<typename T>
using List = ::list<T>;

// tmeplate과의 궁합 - typedef (ok) - struct나 class로 typedef를 감싸는 등의 방법이 있긴하다.
//template<typename T>
//typedef list<T> List;

// typedef + template의 흉측한 모습
template<typename T>
struct List2
{
	typedef std::list<T> type;
};

int main()
{
	List<int> li;				// using + template => 깔끔
	List2<int>::type li2;		// typedef + template => 흉측

	return 0;
}

 


공부한 내용을 개인적으로 복습하기 쉬운 형태로 정리했습니다.

잘못된 내용이 있는 경우 언제든 댓글 혹은 이메일로 지적해주시면 감사드립니다.

728x90

'Programming Language > C++' 카테고리의 다른 글

Modern C++/lambda/람다  (0) 2022.02.09
{} 중괄호 초기화  (0) 2022.02.06
auto  (0) 2022.02.06
함수 객체(함수자, Functor)  (0) 2022.02.06
함수 포인터  (0) 2022.02.06

+ Recent posts