我在 C++ 中创建了两个数组List1
和List2
with 。用数据更新。我想复制到. 我尝试使用new
List1
List1
List2
std::copy(std::begin(List1), std::end(List1), std::begin(List2));
但是,这不起作用并给出以下错误消息:
error: ‘begin’ is not a member of ‘std’
对此错误有什么可能的建议吗?或者在 C++ 中复制的替代方法?
“我在 C++中用new创建了两个数组 List1 和 List2 ”
和begin
freeend
函数不适用于指针。
即使一切都是正确的,你最终可能会得到no matching call to begin(T *&)
T
是指针的类型。
使用std::vector
或std::list
其他 STL 容器或只是简单的静态数组来使用std::begin
和std::end
将此行放在 cpp 文件的顶部:
#include <iterator>
要使用std::begin
,std::end
您需要包含<iterator>
并确保您的编译器支持 C++11。但是,这不会解决您的问题,因为您不能将它们与指针一起使用。改为使用std::vector
。