C++中typename實例

#include <iostream>

template<class T> class X
{
	typename T::id i;
public:
	void f() {
		i.g();
	}
};

class Y
{
public:
	class id
	{
	public:
		void g() {
			std::cout << "id.g()\n";
		}
	};
};

int main()
{
	Y y;
	X<Y> xy;
	xy.f();

	system("pause");
	exit(0);
}


typename告訴編譯將一個特殊的名字看成是一個類型。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章