我从“std::vector”类型的右值中得到“'std::vector&'类型的非常量引用的无效初始化”错误,用于在第二个参数中传入merge_sort(right)。
left_merged = merge_sort(left);
// right_merged = merge_sort(right);
return merge(left_merged, merge_sort(right));
以下是函数声明:
vector<int> merge_sort(vector<int>& vec)
vector<int> merge(vector<int>& left, vector<int>& right)
我一直在阅读关于右值如何成为临时对象的理论,如果它没有在初始化程序中使用或分配给变量,则它会被销毁,但我真正想要的是一个快速而肮脏的解决方案,以便能够在参数。
有什么快速的解决方案吗?
谢谢!