vs2017调用copy是出错。

来源:2-3 随机生成算法测试用例

怀谷2017

2017-11-17

    // 拷贝整型数组a中的所有元素到一个新的数组, 并返回新的数组

    int *copyIntArray(int a[], int n){


        int *arr = new int[n];

        //* 在VS中, copy函数被认为是不安全的, 请大家手动写一遍for循环:)

        copy(a, a+n, arr);

        return arr;

    }


1>g:\consoleapplication3.cpp(32): note: 参见对正在编译的函数 模板 实例化“_OutIt *std::copy<int[],int*>(_InIt,_InIt,_OutIt)”的引用

1>        with

1>        [

1>            _OutIt=int *,

1>            _InIt=int []

1>        ]

1>已完成生成项目“ConsoleApplication3.vcxproj”的操作 - 失败。

========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

这里出错。

写回答

1回答

liuyubobobo

2017-11-17

请尝试手写一个for循环,将a[]中的n个数据赋值到函数中开辟的arr数组中。

0
2
liuyubobobo
回复
慕斯卡5075582
for(int i = 0; i < n; i ++) arr[i] = a[i];
2019-07-16
共2条回复

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11186 学习 · 1614 问题

查看课程