我有一個模板函數啓用(通過std :: enable_if)其參數是一個原始指針,或有一個std :: iterator類別或是一個std :: nullptr_t。在該功能中,原始指針(數據成員)被設定等於參數,像:&*爲原始指針,迭代器和... std :: nullptr_t
template<class T> void myFunction(T it)
{
_ptr = &*it;
}
的& *行之有效的指針和迭代器......但它不能爲一個std :: nullptr_t 。是否有任何解決方案可以避免編寫2個不同的功能?
謝謝。
即使'* it'類型已經重載'operator&',即使'&* it'也不會工作。 – Nawaz