C++:error: passing ‘const string’ as ‘this’ argument discards qualifiers [-fpermissive]
string.cpp: In function ‘int const_f(const string&)’:
string.cpp:6:4: error: passing ‘const string’ {aka ‘const std::__cxx11::basic_string’} as ‘this’ argument discards qualifiers [-fpermissive]
a=“abc”;
^~~~~
const string a= “abc”;
a=“abc”;
这个错误的解释是:传递一个‘const string’ 作为this参数,将导致舍弃限定符。也就是 const string里只有一个限定词 const,就会导致舍弃const。为什么会提示这个错误呢?
这个错误比较难理解的是这个 'this’参数;错误里为什么会专门提示这个this参数;这个就需要往后看,最后这一行会被翻译成一个赋值构造函数,而类里对于成员函数,就是通过这个隐式的参数作为修改对象的一个管道,this是一个隐藏的参数。而这个赋值构造的参数是一个非const this参数,所以才会出现这个错误。
In file included from /usr/include/c++/8/string:52,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/ostream:38,
from /usr/include/c++/8/iostream:39,
from string.cpp:1:
/usr/include/c++/8/bits/basic_string.h:707:7: note: in call to ‘std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char; _Traits = std::char_traits; _Alloc = std::allocator]’
operator=(const _CharT* __s)
^~~~~~~~
C++:error: passing ‘const string’ as ‘this’ argument discards qualifiers [-fpermissive]相关推荐
- error: passing ‘const xxx’ as ‘this’ argument discards qualifiers c++primer 5th文本查询程序一个错误请各位指教(已解决)
文件main.cc 文件main.cc #include <string> #include <iostream> #include <memory> #inclu ...
- C++ STL编译报错:error: error passing 'const' as 'this' argument
用C++ STL(标准模板库)编写仿函数的时候,编译报错: error: passing 'const FindNameOrAddress' as 'this' argument of 'bool F ...
- C++ ERROR:error: passing 'XXX' as 'this' argument of 'XXX' discards qualifiers
遇到了如题目的这种错误: error: passing 'XXX' as 'this' argument of 'XXX' discards qualifiers 如何产生的? 我将一个const变量 ...
- C++编程常见问题—error: passing 'const std::map]' discards qualifiers或pass-by-reference-to-const-map导致的“d
产生问题的场景: int func(const map<int, string> &aMap) { string value = amap[0]; } 或者 int Test:: ...
- mysql:ERROR 1366: Incorrect string value:错误解决
首先排查MySQL的字符集是否为UTF-8 通过命令 mysql> show variables like '%char%'; 得到 +--------------------------+-- ...
- 编译错误:[Error] initializer-string for array of chars is too long [-fpermissive]
字符数组初始化时,数组大小一定要大于字符串长度+1,否则编译错误. 字符串数组最后有\0. 正确的: char a[3] = "ab"; char c[] = "abc& ...
- Error:For input string: Consult IDE log for more details (Help | Show Log)
在GitHub 上下载代码,使用Android studio 打开项目 就报错 : Error:For input string: "" Consult IDE log for m ...
- c错误(1)——[Error] initializer-string for array of chars is too long [-fpermissive]
char zimu_biao[52]="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; char shuzi_biao ...
- Matlab一个错误引发的血案:??? Error using == str2num Requires string or character array input....
Matlab总遇到一些神奇的问题,让人摸不着头脑.昨天编写程序的时候遇到一个让我十分火大的问题,也是自己的matlab基础不好吧. 先描述一下问题,再GUI界面有个listbox,Tag属性是'lis ...
- Mysql插入中文时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F...' fo
Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: '\xE5\x8F\xB0\xE5\xBC\x8F-' fo 分析如下: 首先通过语句 ...
最新文章
- 基于相交线的双目平面SLAM
- ASP.netcore MVC钉钉H5微应用(二)鉴权
- python使用matplotlib可视化subplots子图、为subplots添加主标题(main title)、为subplots的每一个子图添加子图标题(subplots title)
- 用户控件中动态加入脚本引用
- 《Arduino开发实战指南:机器人卷》一3.3 直流电机驱动电路原理
- 超全的 Linux Shell 文本处理工具集锦,快收藏
- 【转】Asp.net页面的生命周期
- CodeForces - 786C——二分+模拟?
- Spring bean生命周期概览
- 深度学习数据预处理——批标准化(Batch Normalization)
- MATLAB的数据类型
- lisp 非对称缓和曲线_GIS环境下缓和曲线绘制方法研究
- 计算机上没有保存任何数据源,Excel数据表找不到链接莫着急——三点操作重建数据的源文件-查看源文件...
- javaweb——jsp动作标签
- 经纬度格式化转换-数据库函数方式
- 社区问答系统(CQA)简单概述
- Relation Graph 人物关系图
- 80后程序员感慨中年危机,Java程序员最新职业规划,面试篇
- 助你上手Vue3全家桶之Vue3教程
- Day2:python爬虫基础学习(大嘘)
热门文章
- XSS靶场练习手工注入(1)
- anaconda报错Collecting package metadata (current_repodata.json): failed
- PowerApps 中的单选控件
- 打印预览的时候,总是会多于一个空白页,怎么办?
- HDU 3065 病毒侵袭持续中 【AC自动机模版题】
- 感冒喝咖啡_早上喝咖啡时学习EmotionJS-就是这么简单。
- LeetCode 520. Detect Capital
- 谷歌Google搜索语法
- 阿里云常用产品汇总及解释
- php function overridden,php在函数外声明global变量有什么用?