以下函数最通用的语法是什么:
template<IteratorType> void myFunction(const IteratorType& myIterator)
{
_ptr = &myIterator[0];
}
它接受一个迭代器myIterator(它可以是一个原始指针),目标是将myIterator
指向的对象的地址分配给一个原始指针_ptr
。目前我使用 &myIterator[0]
但我意识到只有随机访问迭代器才有运算符 []。
那么有没有一种语法适用于所有类型的标准迭代器和指针?
最佳答案
您可以取消引用指针,然后获取对象的地址。
template<IteratorType> void myFunction(const IteratorType& myIterator)
{
_ptr = &(*myIterator);
}
关于c++ - 无论传递了迭代器类型/指针,指向元素的地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12179460/