杂化轨道VSEPR 2022-01-07 13:49 采纳率: 93.3%
浏览 23
已结题

参数传入有问题,在程序最后一句,如何解决

问题遇到的现象和发生背景

leetcode代码本地化,在控制台运行时出现

"resource": "/x:/data-struct/leet-code/rookie-brush-force-buckle/合并两个有序数组.cpp",
    "owner": "C/C++",
    "code": "349",
    "severity": 8,
    "message": "没有与这些操作数匹配的 \"<<\" 运算符 -- 操作数类型为:  std::ostream << void",
    "source": "C/C++",
    "startLineNumber": 21,
    "startColumn": 9,
    "endLineNumber": 21,
    "endColumn": 9
}]

问题相关代码,请勿粘贴截图
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
class Solution {
public:
    void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
        for(int i=0;i!=n;++i)
        {
            nums1[m+i]=nums2[i];//直接合并数组,然后开始排序

        }
        sort(nums1.begin(),nums1.end());

    }
};
int main(){
    vector<int> nums1={1,2,3,4,5};
    vector<int> nums2={4,5,2,6};
    Solution s;
    cout<<s.merge(int nums1,int nums2)<<endl;
}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

展开全部

  • 写回答

3条回答 默认 最新

  • 书山客 2022-01-07 14:41
    关注

    img

    #include<iostream>
    #include<vector>
    #include<algorithm>
    using namespace std;
    class Solution {
    public:
        vector<int> merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
            for (int i = 0; i != n; ++i)
            {
                nums1[m + i] = nums2[i];//直接合并数组,然后开始排序
    
            }
            sort(nums1.begin(), nums1.end());
            return nums1;
        }
    };
    int main() {
        vector<int> nums1 = { 1,2,3,4,5,0,0,0,0 };
        vector<int> nums2 = { 4,5,2,6 };
        Solution s;
        vector<int> nums3 = s.merge(nums1, 5, nums2, 4);
        for (int i = 0; i < 9; i++)
        {
            cout << nums3[i] << endl;
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 1月14日
  • 已采纳回答 1月7日
  • 创建了问题 1月7日