《C++ Primer》14.1节练习

练习14.1:
不同点:
重载操作符必须具有至少一个class或枚举类型的操作数。
重载操作符不保证操作数的求值顺序,例如对&&和||的重载版本不再具有“短路求值”的特性,两个操作数都要进行求值,而且不规定操作数的求值顺序。
相同点:
对于优先级和结合性及操作数的数目都不变。

练习14.2:

class Sales_data
{friend std::istream&operator>>(std::istream&,Sales_data &);friend std::ostream&operator<<(std::ostream&,const Salse_data &);public:Sales_data&operator+=(const Sales_data&);
};Sales_data operator+(con

练习14.3:
(a)"cobble" == "store"应用了C++语言内置版本的==,比较两个指针。
(b)svec1[0] == svec2[0]应用了string版本的重载==。
©svec1 == svec2应用了vector版本的重载==。
(d)svec1[0] == "stone"应用了string版本的重载==,字符串字面常量被转换为string。

练习14.4:
(a)%通常定义为非成员。
(b)%=通常定义为类成员,因为它会改变对象的状态。
©++通常定义为类成员,因为它会改变对象的状态。
(d)->必须定义为类成员,否则编译会报错。
(e)<<通常定义为非成员。
(f)&&通常定义为非成员。
(g)==通常定义为非成员。
(h)()必须定义为类成员,否则编译会报错。

练习14.5:

#include <iostream>
using namespace std;class Date {public:Date() {};Date(int y, int m, int d) {year = y;month = m;day = d;}friend ostream &operator<<(ostream &os, const Date &dt);private:int year, month, day;
};ostream &operator<<(ostream &os, const Date &d) {const char sep = '\t';os << "year:" << d.year << sep << "month:" << d.month << sep << "day:" << d.day << endl;return os;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/310970.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 磁盘i o 优化_经典案例:磁盘I/O巨高排查全过程

作者&#xff1a;叶金荣&#xff0c;知数堂联合创始人&#xff0c;3306pai社区联合创始人前言是什么原因导致线上数据库服务器磁盘I/O的util和iowait持续飚高&#xff1f;1. 问题描述朋友小明的线上数据库突发严重告警&#xff0c;业务方反馈写入数据一直堵住&#xff0c;很多锁…

Asp.Net Core 中IdentityServer4 实战之 Claim详解

一、前言由于疫情原因&#xff0c;让我开始了以博客的方式来学习和分享技术&#xff08;持续分享的过程也是自己学习成长的过程&#xff09;&#xff0c;同时也让更多的初学者学习到相关知识&#xff0c;如果我的文章中有分析不到位的地方&#xff0c;还请大家多多指教&#xf…

《C++ Primer》14.2.1节练习

练习14.6: class Sales_data {friend ostream&operator<<(sotream&os,const Salse_data &item); };ostream&operator<<(ostream &os,const Sales_data &item) {const char *sep ;os<<item.isbn()<<sep<<item.units_s…

程序员还有35岁的坎吗?

昨天晚上和多年未见的前同事聊天&#xff0c;提到了程序员的年龄歧视问题&#xff1a;自己年龄也 30 出头了&#xff0c;在思考 IT 届流传的 35 岁是一个坎的问题&#xff1b;开始注重提升管理能力&#xff0c;担心35岁之后&#xff0c;一线写代码的岗位不能胜任&#xff1b;公…

《C++ Primer》14.2.2节练习

练习14.9: 输入运算符从给定输入流读取对应类型的对象&#xff0c;存入Sales_data的数据成员中。与输出不同&#xff0c;输入通常要进行一些正确性的判定&#xff0c;并进行相应处理。 class Sales_data {friend istream&operator>>(istream&is,Sales_data &am…

java 左移 返回值_java左移右移运算符详解

在阅读源码的过程中&#xff0c;经常会看到这些符号<< &#xff0c;>>&#xff0c;>>>&#xff0c;这些符号在Java中叫移位运算符&#xff0c;在写代码的过程中&#xff0c;虽然我们基本上不会去写这些符号&#xff0c;但需要明白这些符号的运算原理&…

人与人的差距在于认知

作者介绍findyi&#xff0c;腾讯、360码农&#xff0c;前哒哒少儿英语技术VP&#xff0c;现任土豆教育CTO。工作和生活中不光要埋头干活&#xff0c;还要抬头看天。思考总结方法论是提升认知的必备途径&#xff0c;是将碎片化知识总结为动态的智慧的过程。认知有多重要&#xf…

《C++ Primer》14.3节练习

练习14.13: 对于Sales_data类&#xff0c;其实我们并不需要再为它添加其他算术运算符。但是这里我们可以考虑为它实现一个减法运算符。 class Sales_data {friend Sales_data operator-(const Sales_data &lhs,const Sales_data &rhs);public:Sales_data&operator…

C# lock 语法糖实现原理--《.NET Core 底层入门》之自旋锁,互斥锁,混合锁,读写锁...

在多线程环境中&#xff0c;多个线程可能会同时访问同一个资源&#xff0c;为了避免访问发生冲突&#xff0c;可以根据访问的复杂程度采取不同的措施原子操作适用于简单的单个操作&#xff0c;无锁算法适用于相对简单的一连串操作&#xff0c;而线程锁适用于复杂的一连串操作原…

《C++ Primer》14.3.1节练习

练习14.16: //为strBlob定义和! class strBlob {friend bool operator(const strBlob &lhs,const strBlob &rhs);friend bool operator!(const strBlob &lhs,const strBlob &rhs); };bool operator(const strBlob &lhs,const strBlob &rhs) {return l…

java中employee_java Employee(雇员)

public class Employee {//类Employee有两个属性,name,sexString name;char sex;Employee(String n,char s){//用new使用时构造该类&#xff0c;把n,s分别赋值namen;sexs;}public String getName(){//获取namereturn name;}public char getSex(){//获取sexreturn sexl;//你这里…

.NET5来了你别慌

近日微软.Net大咖Scott在博客中对外宣传.NET5首个预览版&#xff0c;并且我们可以通过微软的官网下载SDK5和运行库。很多朋友感觉.NetCore3.1还没搞明白&#xff0c;.NET5就来了感觉一下子慌了神。在这里我提醒朋友们&#xff0c;瞬息万变的世界中&#xff0c;总有相对不变的真…

《C++ Primer》14.3.2节练习(部分)

练习14.18: String类的关系运算符就是比较两个字符串字典序的先后。 class String {friend bool operator<(const String &s1,const String &s2);friend bool operator<(const String &s1,const String &s2);friend bool operator>(const String &am…

java8 stream 最大值_JDK8-Stream流常用方法

Stream流的使用流操作是Java8提供一个重要新特性&#xff0c;它允许开发人员以声明性方式处理集合&#xff0c;其核心类库主要改进了对集合类的 API和新增Stream操作。Stream类中每一个方法都对应集合上的一种操作。将真正的函数式编程引入到Java中&#xff0c;能 让代码更加简…

周三晚6点半!盛派首席架构师“苏老师”在线解密内部系统框架!

工作中有些事&#xff0c;看起来只用一会会儿就能完成&#xff0c;但真正完成起来&#xff0c;总会遇到一些意想不到的困难&#xff01;你一定碰到过这样的情况——开发时间 2 周的项目&#xff0c;搭框架就要用 1 周&#xff0c;刚开发完&#xff0c;各种调试和修 bug又花去 2…

《C++ Primer》14.4节练习(部分)

练习14.20: class Sales_data {friend Sales_data operator(const Sales_data &lhs,const Sales_data &rhs);public:Sales_data &operator(const Sales_data &rhs); }Sales_data operator(const Sales_data &lhs,const Sales_data &rhs) {Sales_data …

java 二维高斯_Java Random nextGaussian()用法及代码示例

随机类的nextGaussian()方法返回下一个伪随机数&#xff0c;即与随机数生成器序列的平均值为0.0&#xff0c;标准差为1.0的高斯(正态)分布双精度值。用法:public double nextGaussian()参数&#xff1a;该函数不接受任何参数。返回值&#xff1a;此方法返回平均值为0.0&#xf…

给微软的日志框架写一个基于委托的日志提供者

动手造轮子&#xff1a;给微软的日志框架写一个基于委托的日志提供者Intro微软的日志框架现在已经比较通用&#xff0c;有时候我们不想使用外部的日志提供者&#xff0c;但又希望提供一个比较简单的委托就可以实现日志记录&#xff0c;于是就有了后面的探索和实现。Solution基于…

C++分析使用拷贝控制成员和调用构造函数的时机

我们来分析下面这段代码&#xff1a; #include <iostream> #include <vector>using namespace std;struct X {X() {cout << "构造函数X()" << endl;}X(const X &) {cout << "拷贝构造函数X(const X&)" << en…

mybatis mysql模糊查询_详解MyBatis模糊查询LIKE的三种方式

模糊查询也是数据库SQL中使用频率很高的SQL语句&#xff0c;使用MyBatis来进行更加灵活的模糊查询。直接传参法直接传参法&#xff0c;就是将要查询的关键字keyword,在代码中拼接好要查询的格式&#xff0c;如%keyword%,然后直接作为参数传入mapper.xml的映射文件中。public vo…