C++编译出现binding ‘const string {aka const std::__cxx11::basic_string<char>}’ to reference of type ‘std

来源:互联网 发布:java图书管理系统代码 编辑:程序博客网 时间:2024/06/05 23:54

编译异常如下:



解决办法:

我的函数是这样的

string &larger(const string &s1, const string &s2){    return s1.size() > s2.size()? s1 : s2;}

改成这样就行了

const string &larger(const string &s1, const string &s2){    return s1.size() > s2.size()? s1 : s2;}

忘记加const


总结:

下次写函数要注意,如果参数字符串都是const,返回的引用的类型也是const,const请保持一致,在C++里面很重要,还是得把C++里面的 const关键字多总结。

0 0
原创粉丝点击