[英]How to get value type from decltype a reference?
我有一個模板功能,如下所示:
template<typename T>
void do_something(T &c) {
decltype(c[0]) tmp;
//...
}
T
可以是數組或容器。 這將tmp聲明為引用,但是我想要一個值類型並且不對其進行初始化(因此,我不想執行auto tmp = c[0]
)。 我怎樣才能做到這一點?
如果只是參考問題,可以在<type_traits>
使用std::remove_reference
:
typename std::remove_reference<decltype(c[0])>::type tmp;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.