template <typename T> class Blob{
public:
typedef typename std::vector<T>::size_type size_type;
為什麼中間有個typename,而不是直接寫成這樣:
typedef std::vector<T>::size_type size_type;
謝謝啦。
這個是在模板定義中,在你的代碼中std::vector::size_type 這個是一個類型,而不是一個變量,所以需要告訴編譯器,它是一個類型,而不是變量
所以需要加typename來進行修飾,告訴編譯器,不然編譯器就會有出錯。