close
這兩個keyword的作用很類似,一個是自訂義型態的"名稱",
一個是把"返回型態"拿來用,下面來看簡單的範例,
在使用循序容器vector時,有一個迭代器叫iterator,
宣告,std::vector<int>::iterator iter,
超長的,可是用typedef可以簡化成iter,
是不是很方便,再來是decltype,
下方的案例我是用vector.size(),雖說也是可以用int,
但他的真正型態是vector::size_type(),是一個無號數。
#include <iostream>
#include<vector>
int main(){
typedef int INT; //自訂義型態
INT a = 45;
std::vector<int> v;
typedef std::vector<int>::iterator iter ;
iter beg = v.begin();
decltype(v.size()) b = 46; //std::vector<int>::size_type
return 0;
}
上述兩個keyword,我真的很少用,但也是需要知道一下,
避免看別人的程式結果看不懂,
不過比起這兩個,較為常用的是auto,是C++11的東西,
很方便沒錯,但還是少用吧,因為你會對他的型態沒感覺,
當然偶爾偷懶一下是沒問題的。 ( ͡° ͜ʖ ͡°)
文章標籤
全站熱搜