2012-08-22 117 views
1

std::copy<InputInterator, OutputIterator>(/*...*/);迭代器类型为基本类型阵列

如何确定InputInteratorOutputIterator类型双打double d[]的阵列?是否有某种iterator_traits<double*>::iterator_type

UPD:我用很旧的编译器,所以我需要显式实例

+1

我想你是说你需要明确的_instantiation_。 – sbi

回答

2

为什么需要这个? copy是一个函数,所以,使用简单

std::copy(d, d + size, d); 

此呼叫会自动推断类型的参数。

而且也有std::iterator_traits<T*>::pointer,对于double*double*评估并可以简单地使用

std::copy<double*, double*>(d, d + size, d);

如果你想。

+0

因为我使用了很老的编译器 – fogbit

+0

@fogbit:停止使用这样一个野兽。 – sbi

+0

@sbi:我不会介意你说服我的老板用新的压缩机改写整个旧项目 – fogbit