牛客网剑指offer专题:把数组排成最小的数
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
在使用C++刷上面这道题的时候,自定义了类成员函数compare()作为类内使用sort的时候的自定义比较函数,之后就报错
reference to non-static member function must be called
代码如下:
class Solution {
public:
string PrintMinNumber(vector<int> numbers) {
</

在使用C++解决牛客网剑指offer的数组排序问题时,遇到sort报错。错误原因是尝试使用非静态成员函数compare作为sort的比较函数。解决办法是在compare前添加static关键字,或将其移出类外,因为非静态成员函数需要隐式传入this指针,而sort需要一个不依赖对象实例的函数指针。
最低0.47元/天 解锁文章
3358

被折叠的 条评论
为什么被折叠?



