簡體   English   中英

“重載”模板化和非模板化類型

[英]“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;

我只對能夠同時使用ClassClass<T>作為類型感興趣,其中Class行為與Class<void>相同 - Class<void>的聲明可以是必要的,以使其工作。

添加默認參數。

template<typename T = void>
class Class;

Class<>現在等同於Class<void>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM