2009-05-20 65 views
13

有沒有人知道模板類中超出聲明模板方法的語法。超出模板類中模板方法的聲明模板定義

例如:

template<class TYPE> 
class thing 
{ 
public : 
    void do_very_little(); 

    template<class INNER_TYPE> 
    INNER_TYPE do_stuff(); 
}; 

第一種方法的定義:

template<class TYPE> 
void thing<TYPE>::do_very_little() 
{ 
} 

我該怎麼做第二個, 「do_stuff」?

+0

您的意思是聲明do_stuff作爲成員字段?假設你真的想要聲明一個方法,它的參數是什麼? – outis 2009-05-20 05:32:14

+0

您需要在類聲明中的do_stuff之後加上括號 – 2009-05-20 05:37:22

回答

29
template<class TYPE> 
template<class INNER_TYPE> 
INNER_TYPE thing<TYPE>::do_stuff() 
{ 
    return INNER_TYPE(); 
} 

試試這個。