所以,我有這個模板類,我正在嘗試編寫一個通用轉換運算符。 我想出是這樣(不工作:「錯誤 - 預期‘類型名稱’後合格的名稱」):模板顯式轉換運算符
template <typename T>
class object{
...
T internal;
...
template <typename U>
explicit operator typename decltype(
std::conditional<
std::is_convertible<T, U>::type , U, T>::type)()
{
return static_cast<std::conditional<std::is_convertible<T, U>::type ,U, T>::type>(internal);
}
難道我做錯了什麼或只是不可能?
請注意,'的std :: is_convertible'在很多情況成立。 –
實際上你想要做什麼? –