我們可以在沒有模板類的普通類中聲明template
函數,還是應該總是在template class
之內?C++中的模板
Q
C++中的模板
3
A
回答
2
我們可以在一個普通的類聲明模板函數同出一模板類
我們可以。例如
class demo
{
public:
template <typename T>
void func(const T& x) {
//do stuffs
}
};
int main()
{
demo d;
d.func<int>(5);
}
是完全有效
2
是的,你可以在非模板類模板函數的支持,例如:
struct X {
template<class T>
void f(const T& t) {
// ...
}
};
0
是的,你可以,但要確保你的定義和模板函數的聲明是在頭文件。如果你想知道更多爲什麼這樣或更多關於模板一般我可以推薦你這本書Templates - Complete Guide
相關問題
- 1. C++模板中的模板對象
- 2. 模板的模板C++
- 3. C++模板模板
- 4. C++中,非模板類模板變量
- 5. 評估模板(模板模板參數)的C++模板參數
- 6. 模板模板C++函數
- 7. vim中的C++模板
- 8. C++中的模板繼承
- 9. C++中的模板編程
- 10. C++中的模板實例
- 11. C++中的模板函數
- 12. C++中的模板斷言?
- 13. C++中的模板類
- 14. C++中的類模板中的模板類
- 15. C++模板類的模板專門化
- 16. 作爲模板參數的C++模板
- 17. C++ 11別名和模板的模板
- 18. C中的無警告模板C
- 19. C++模板的typedef
- 20. C++模板的typedef
- 21. 從模板C++
- 22. C++模板類
- 23. ,C++模板:
- 24. 在C++模板
- 25. C++模板
- 26. C++模板類
- 27. C++模板特
- 28. C++模板 - LinkedList
- 29. C++模板類
- 30. C++:模板類
我認爲你的意思是「班級模板」。一個類模板,比如'template struct Foo {};'是一種模板,但不是一種類。同樣,「功能模板」是另一種模板,而不是功能。 –
MSalters
2010-11-15 09:56:18
這已經是一個騙局 – 2010-11-15 13:23:28