赋值操作符的左边的操作数要求是可寻址的。

1、

#include<iostream>
#include<string>
using namespace std;char get_val(string &str,string::size_type ix)
{return str[ix];
}int main(void)
{string s("123456");cout<<s<<endl;get_val(s,0)='a';   cout<<s<<endl;return 0;
}

编译错误:get_val(s,0)='a';  赋值运算符左边的操作数不可寻址

2、

#include<iostream>
#include<string>
using namespace std;char * get_val(string &str,string::size_type ix)
{return &str[ix];
}int main(void)
{string s("123456");cout<<s<<endl;*(get_val(s,0))='a';cout<<s<<endl;return 0;
}

语法完全正确:输出123456 、a3456,但是绝不要这样写程序。

3、

#include<iostream>
using namespace std;class A
{};A getA()
{A a;return a;
}int getInt()
{return 6;
}int main(void)
{A x;getA() = x;    //ok,临时的对象可寻址getInt() = 6;  //error,临时的基本数据类型不可寻址return 0;
}

转载于:https://www.cnblogs.com/zzj3/archive/2013/04/28/3049532.html

高质量程序设计指南c++/c语言(19)--赋值操作符“=”相关推荐

  1. 高质量程序设计指南:C++/C语言

    <高质量程序设计指南:C++/C语言> 基本信息 作者: 林锐 韩永泉 [作译者介绍] 出版社:电子工业出版社 ISBN:9787121186172 上架时间:2012-10-24 出版日 ...

  2. 《高质量程序设计指南——C/C++语言》之开篇记

    <高质量程序设计指南--C/C++语言>是林锐博士和韩永泉先生撰写的著作,记得刚毕业那会读过了.应该说,这本书是对学校教科书的一个很好补充和提高.关于C/C++的经典书籍,国外已经有很多很 ...

  3. 《高质量程序设计指南——C/C++语言》第1章 高质量软件开发之道

    第1章 高质量软件开发之道 本书的第1章之高质量软件开发之道,作者用大量的篇幅介绍了"软件质量"的基本概念,解释了软件质量的十大属性.这十大质量属性又分为功能性和非功能性两类,功能 ...

  4. 高质量程序设计指南c++/c语言(33)--函数指针

    函数类型由其返回类型和形参表确定,而与函数名无关. // pf points to function returning bool that takes two const string refere ...

  5. 高质量程序设计指南c++/c语言(17)--函数

    对于静态链接库的函数库或者类库,如果你调用了其中的函数,那么连接器会从相应的库中提取这些函数的实现代码并把他们连接到你的程序中,如果你没有调用库中的某些函数,则连接器是不会把他们的实现代码连接进来的, ...

  6. 高质量程序设计指南c++/c语言(25)--类与内联函数

    我们可以用inline来定义内联函数,不过,任何在类的说明部分定义(不是声明)的函数都会被自动的认为是内联函数. 内联函数必须是和函数体声明在一起,才有效.像这样的声明inline Tablefunc ...

  7. 高质量程序设计指南c++/c语言(30)--引用

    引用就是对象的另一个名字,不能定义引用类型的引用.引用必须用与该引用同类型的对象初始化. const引用是指向const对象的引用. const int ival = 1024; const int ...

  8. 高质量程序设计指南c++/c语言(14)--函数指针

    在注册一个回调函数的时候,我们常常使用函数指针.c++/c的连接器在连接程序的时候必须把函数体的首地址绑定到对该函数调用语句上,因此函数地址必须在编译时就确定下来,也就是编译器为函数体生成代码的时候. ...

  9. 高质量程序设计指南C/C++阅读笔记

    阅读书籍:<高质量程序设计指南C/C++语言>林锐.韩勇泉著 说明: 本文档为阅读笔记,要求有一定的C/C++基础,属于提高篇 一.软件质量基本概念 功能属性: 1.正确性Correcte ...

  10. C语言书籍阅读-读书笔记--高质量程序设计指南》--C/C++,林锐

    最近闲下来想找机会参加一些编程比赛锻炼锻炼,可没有一个相关网站可以搜集这些信息,因而自己记录下来: 百度之星,http://star.baidu.com/index/developer.时间07.25 ...

最新文章

  1. 颠覆arXiv等传统论文平台?谷歌大牛强推的Distill进展如何?
  2. scikit-learn朴素贝叶斯各种用法总结真正讲明白的,为作者建平点赞
  3. 报告 | 2018中国区块链行业分析报告
  4. leeds计算机科学理学硕士,利兹大学数学及计算机科学理学硕士研究生申请要求及申请材料要求清单...
  5. Excel+DDT数据驱动实例
  6. 蓝桥杯- 图形显示(java)
  7. etc/ld.so.conf
  8. 云计算时代下的数据中心运维之路
  9. D3 interpolate
  10. oracle 删除已备份归档,通过RMAN联机全库备份,包括控制文件,归档日志文件,备份成功后,删除已备份的归档日志。...
  11. XP 装 sql 2008 允许远程连接
  12. php curl读取头,php curl 获取请求头与DNS解析
  13. linux开发板命令rx,linux 常用命令汇总
  14. 02-Vue基础之条件渲染和列表渲染
  15. 一个人的孤独,一群人的狂欢!
  16. Python简单实现图像融合
  17. t微信小程序开发-获取微信运动步数
  18. RAID设备的数据恢复
  19. CPU负载与CPU使用率
  20. 运维平台元数据稽核小结

热门文章

  1. python图像颜色反转_OpenCV图像颜色反转算法详解
  2. 【2019杭电多校第五场1007=HDU6630】permutation 2(打表找规律+分情况讨论)
  3. 【POJ1064】Cable master(二分搜索+浮点判断处理)
  4. oracle18cscott,Oracle 18c 数据库中scott用户不存在的解决方法
  5. 自动驾驶 10-3: 全球导航卫星系统 (GNSS)The Global Navigation Satellite Systems
  6. 自动驾驶7-4 自动驾驶汽车简介全面总结 Congratulations on Completing Course 1
  7. 极客大学架构师训练营 加密技术 高可用系统的度量 高可用系统的架构 高可用系统的运维 第22课 听课总结
  8. java积分签到功能_对于签到功能的一点理解
  9. ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memor
  10. 使用CAFFE训练自己的数据集并单张图片测试的方法