[英]Define default implementation of template class in C++
我知道可以為模板參數定義默認值:
template<int N = 10> struct Foo {};
例如,您可以像Foo<>
這樣使用它,但我希望只寫Foo
。
我嘗試了以下操作,但是不起作用(拋出編譯器異常):
struct Foo : Foo<10> {};
這在C ++中可能嗎?
您不能直接使用,但是可以通過typedef
接近實現,即
template<int N = 10> struct Foo{};
typedef Foo<> DefaultFoo;//Or whatever name that fits, just not 'Foo'
int main() {
DefaultFoo myFoo;
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.