[英]“Overloading” templated and non-templated types
在c ++中,可以重載模板化函數,以便可以使用模板參數調用它,或者不使用:
void func();
template <typename T> void func();
func();
func<int>();
類型(即類)是否可以相同?
class Class;
template <typename T> class Class;
Class a;
Class<int> b;
我只對能夠同時使用Class
和Class<T>
作為類型感興趣,其中Class
行為與Class<void>
相同 - Class<void>
的聲明可以是必要的,以使其工作。
添加默認參數。
template<typename T = void>
class Class;
Class<>
現在等同於Class<void>
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.