![]() |
1
6
是的,类型
当然,如果输出器是一个指针或一个正确编写的STL兼容的迭代器。否则,不,我想没有办法。 在即将到来的C++ 0x中,这将是非常容易的,也就是说,
HTH 阿芒 |
![]() |
2
1
对你的问题不是一个准确的答案,但听起来你不想
|
![]() |
3
1
您可以修改复制例程以使用模板进行转换…
这就是说,如果你不想专门学习如何修改副本来处理这个问题,奥利的回答会更好。 |
![]() |
4
1
简短的答案是否定的。如果输出器真的是 输出器(例如Ostream_迭代器),然后: typename std::iterator_traits::value_类型 将是无效的,在C++0X中, decltype(*结果) 可能是外泄者。(所以Armen的建议没有 使用模板代码。) 托尼提出的重新解释演员阵容的建议不起作用。 要么。事实上,它会破坏一些有用的东西(例如 输入器返回int,输出器需要 双倍)。 唯一真正的答案是奥利的。这是合乎逻辑的:你 真正想做的是转换数据,而不仅仅是复制它。 |
|
Julia · 矢量中相加为总和S的值的数量 2 年前 |
![]() |
C_Rod · 在模板方法中确定STL容器中项目的数据类型 2 年前 |
![]() |
quantumwell · 将空向量放入std::map() 7 年前 |
![]() |
OutOfBound · 对未初始化内存使用算法的优点 7 年前 |
![]() |
DarthRubik · 在使用列表删除之后,迭代器如何不无效 7 年前 |