关系运算符

Keithee Explorer

谁都会走 提交于 2019-12-01 21:54:07
本章学习如何控制类类型对象在拷贝、赋值、移动和销毁时应该做什么。 一个类定义五种特殊的成员函数来控制对象的拷贝、移动、赋值和销毁操作。他们分别是拷贝构造函数、拷贝赋值运算符、移动构造函数、移动赋值函数和析构函数。 拷贝、赋值与销毁 拷贝构造函数 如果构造函数的第一个参数是自身对象的引用,而且其他额外参数都有默认值,则该构造函数是拷贝构造函数。 12345 class {public: Foo(); Foo(const Foo&);} 拷贝构造函数会在几种情况下被隐式地使用,所以不应该是 explicit 。 合成拷贝构造函数 如果我们没有定义一个拷贝构造函数,则编译器会为我们定义一个。编译器将类内的每个非 static 成员拷贝到正在创建的对象中。对于类类型的成员,则使用其拷贝构造函数来拷贝。 123456789 class Sales_data{public: Sales_data(const Sales_data&);private: string bookNo; int units_sold; double revenue;} 现在我们可以理解直接初始化和拷贝初始化的真正区别了,也就是说直接初始化是一个构造函数参数匹配的过程,而拷贝初始化要求我们将右侧的运算对象拷贝到左侧的对象中去,有时候还要求类型转换。 拷贝初始化不仅发生在使用 = 运算符时,还发生在以下情况:

shell基本运算符

我们两清 提交于 2019-12-01 20:32:40
Shell运算符:   算数运算符 关系运算符 布尔运算符 字符串运算符 文本测试运算符 算数运算符 原生bash不支持简单的数学运算符,但是可以通过其它命令来实现。例如:awk 和 expr,其中expr最常用 运算符 说明 举例 + 加法 `expr $a + $b` 结果为 30。 - 减法 `expr $a - $b` 结果为 -10。 * 乘法 `expr $a \* $b` 结果为 200。 / 除法 `expr $b / $a` 结果为 2。 % 取余 `expr $b % $a` 结果为 0。 = 赋值 a=$b 将把变量 b 的值赋给 a。 == 相等。用于比较两个数字,相同则返回 true。 [ $a == $b ] 返回 false。 != 不相等。用于比较两个数字,不相同则返回 true。 [ $a != $b ] 返回 true。 #!/bin/bash #简单算数运算符 a=100 b=10 echo "a = $a , b = $b" c=`expr $a + $b` echo "a + b is value :$c" c=`expr $a - $b` echo "a -b is value : $c" c=`expr $a \* $b` echo "a * b is value : $c" c=`expr $a / $b` echo "a / b

C 储存类与运算符

折月煮酒 提交于 2019-12-01 20:18:45
储存类 参考链接: https://www.runoob.com/cprogramming/c-storage-classes.html 存储类定义 C 程序中变量/函数的范围(可见性)和生命周期 auto储存类 auto 存储类是所有局部变量默认的存储类。 register 存储类 register 储存类用于定义可能储存在寄存器中的变量,这用于定义经常访问的如计数器 static储存类 即定义全局变量 static 用于定义能在程序运行过程中都有效的变量,而不必使编译器在每次进入和跳出这个变量的作用域时创建和销毁变量。 extern储存类 用于提供一个全局变量的引用 应用于两个文件中相同变量的定义 运算符 参考链接: https://www.runoob.com/cprogramming/c-operators.html int a=10; c=a++;//c的值是10,因为先赋值后运算 int a=10; c=++a;//c的值是11,先运算后赋值 关系运算符 关系运算符用来判断大小是否相等 逻辑运算符 &&与 ||或 位运算符 对值进行按位运算,结果的位数仍和原来的位数相等 &按位逻辑与 |按位逻辑或 ^按位 异或 运算符 异或(先求反,在进行或运算) ~按位取反 <<左移两位 0011 0000<< 的结果是1100 0000 右移两位 赋值运算符 形如+=、-=、*=、

shell学习笔记

末鹿安然 提交于 2019-12-01 19:48:14
Shell Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 第一个shell脚本 1 #!/bin/bash 2 echo "Hello World !" #! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。 echo 命令用于向窗口输出文本。 运行 Shell 脚本有两种方法: 1、作为可执行程序 将上面的代码保存为 test.sh,并 cd 到相应目录: chmod +x ./test.sh #使脚本具有执行权限 ./test.sh #执行脚本 使用变量 使用一个定义过的变量,只要在变量名前面加美元符号即可,如: 1 your_name="xieshaoxiong" 2 echo $your_name 3 echo ${your_name} Shell 字符串 字符串可以用单引号,也可以用双引号,也可以不用引号。 str='this is a string' 拼接字符串 your_name="xieshaoxiong" # 使用双引号拼接 greeting="hello, "$your_name" !" greeting_1="hello, ${your_name} !" echo $greeting $greeting_1 # 使用单引号拼接

Shell 替换+运算符

早过忘川 提交于 2019-12-01 19:40:46
Shell 替换 Shell 替换:如果表达式中含有特殊字符时,Shell将会进行替换。例如,在双引号中使用变量是一种替换,转义字符也是一种替换。 转义字符替换 例:echo -e "Value a is $a \n" 如果不使用-e选项,将会原样输出 命令替换:Shell可以先执行命令,将结果暂时保存,在适当的地方输出 语法: `命令` 或 $(命令) 变量替换:变量 替换可根据变量的状态(是否为空,是否定义等)来改变它的值 形式 说明 ${var} 变量本来的值 ${var:-word} 如果变量 var 为空或已被删除(unset),那么返回 word,但不改变 var 的值。 ${var:=word} 如果变量 var 为空或已被删除(unset),那么返回 word,并将 var的值设置为 word。 ${var:?message} 如果变量 var 为空或已被删除(unset),那么将消息 message 送到标 准错误输出,可以用来检测变量 var 是否可以被正常赋值。 若此替换出现在Shell脚本中,那么脚本将停止运行。 ${var:+word} 如果变量 var 被定义,那么返回 word,但不改变 var 的值。 Shell 运算符 算数运算符 expr 是一款表达式计算工具,使用它能完成表达式的求值操作   注意:表达式和运算符之间要有空格 完整的表达式要被

结对项目

半世苍凉 提交于 2019-12-01 14:08:10
一,Github项目地址: https://github.com/candy07213/MyAPP https://github.com/Moyjing/Myapp 结对成员:3217004686 莫怡静 3217004687 唐小艳 二,PSP表格: PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 50 65 · Estimate · 估计这个任务需要多少时间 50 65 Development 开发 1770 2045 · Analysis · 需求分析 (包括学习新技术) 150 130 · Design Spec · 生成设计文档 60 55 · Design Review · 设计复审 (和同事审核设计文档) 40 60 · Coding Standard · 代码规范(为目前的开发制定合适的规范) 40 50 · Design · 具体设计 120 100 · Coding · 具体编码 1200 1450 · Code Review · 代码复审 70 90 · Test · 测试(自我测试,修改代码,提交修改) 90 110 Reporting 报告 160 140 · Test Report · 测试报告 90 80 · Size Measurement · 计算工作量

Python语法速查: 5. 运算符、math模块、表达式

感情迁移 提交于 2019-12-01 07:09:35
/*--> */ /*--> */ (1)一些较容易搞错的运算符 一般简单的如加减乘除之类的运算符就不写了,这里主要列些一些容易搞错或忘记的运算符。运算符不仅仅只有号,有一些英文单词如 in, and 之类,也是运算符,并不是语句。 运算符 简述 举例或说明 数字操作 / 在Python3中,默认为浮点数除法;在Python2中,若除数和被除数都是整数,则默认为截断除法。若要在Python2中也为浮点数除法,需要使用: from __future__ import division 2/3 # Python3 中结果为:0.6666666666666666 2/3 # Python2 中结果为:0 // 截断除法(仅保留整数部分),又叫“地板除法”。 2//3 # 结果为 0 % 取模(浮点数也可以做取模运算)。 8 % 3 # 结果为 2 1.2 % 0.5 # 结果为 0.2 ** 乘方(次方)运算。 2**3 # 结果为 8 -x 一元减法。 x=3; x=-y # 结果为 x=-3 +x 一元加法(一般用不到)。 x=+3 # 结果为 x=3 位操作 & 按位与。 0b111 & 0b011 # 结果为 3 | 按位或。 0b010 & 0b001 # 结果为 3 ^ 按位异或。 0b001 & 0b011 # 结果为 2 ~ 按位求反。 ~1 # 结果为 -2

typeof 与 instanceof 运算符

丶灬走出姿态 提交于 2019-12-01 07:00:22
相信很多伙伴们在刚刚入门js的时候,都会遇到 typeof 与 instanceof 在用法上的一些个困惑,今天小编就要和大家聊一聊它们各自的用法以及一些区别, 您先别急,咱下面就来分别讲解: js是一门弱语言,它在声明变量时无需确定变量的类型,js在运行时会自动判断。 typeof 用来 检测一个变量的类型 , 返回值是一个 字符串 。 使用方式 :typeof(表达式)和 typeof 变量名 运算符返回值 :字符串,有七种可能:"undefined" ,"number" ,"string","boolean" ,"object" ,"function" ,"symbol" typeof undefined // "undefined" typeof 1 // "number" typeof "1" // "string" typeof false // "boolean" typeof {} // "object" typeof [] // "object" typeof null // "object" typeof function () {} // "function" typeof Symbol(1) // "symbol" (注意:对象、数组、null的typeof返回值都是”object”) 如果我们想判断一个变量类型是否是数组,建议使用: Array

C语言运算符优先级和口诀

旧巷老猫 提交于 2019-11-30 04:32:50
一共有十五个优先级: 1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof 3 * / % 4 + - 5 >> << 6 > >= < <= 7 == != 8 & 9 ^ 10 | 11 && 12 || 13 ?: 14 = += -= *= /= %= |= ^= &= >>= <<= 15 , ☆注意 : 结合性:2 13 14 是从右至左 其他都是 从左至右 括号成员第一     // 括号运算符[]() 成员运算符. -> 全体单目第二     // 所有的单目运算符比如++、 --、 +(正)、 -(负) 、指针运算*、& 乘除余三加减四   // 这个"余"是指取余运算即% 移位五,关系六    // 移位运算符:<< >> ,关系:> < >= <= 等 等于 不等排第七   // 即== 和!= 位与异或和位或    // 这几个都是位运算: 位与(&)异或(^)位或(|) 三分天下八九十 逻辑与跟或     // 逻辑运算符:|| 和 && 十一跟十二     // 注意顺序:优先级(&&) 高于 优先级(||) 条件高于赋值   // 三目运算符优先级排到13 位只比赋值运算符和","高 逗号运算级最低  // 逗号运算符优先级最低 来源: https://www.cnblogs.com

Shell编程-条件测试 | 基础篇

∥☆過路亽.° 提交于 2019-11-30 03:18:38
什么是Shell Shell是一个命令解释器,它会解释并执行命令行提示符下输入的命令。除此之外,Shell还有另一个功能,如果要执行多条命令,它可以将这组命令存放在一个文件中,然后可以像执行Linux系统提供的其他程序一样执行这个文件,这个命令文件就叫做Shell程序或者Shell脚本。当运行这个文件时,它会像在命令行输入这些命令一样顺序地执行它们。 Shell脚本支持变量、命令行参数、交互式输入、函数模块、各种控制语句等高级编程语言的特性,如if、case、while和for等。利用Shell程序设计语言可以编写出功能非常复杂的脚本程序,把大量的任务自动化,尤其是那些需要输入大量命令而在执行过程中不太需要与用户进行干预的系统管理任务。 为了让Shell能读取并且执行Shell程序,Shell脚本的文件权限必须被设置为可读和可执行。为了让Shell可以找到程序,可以选择输入完全路径名,或者将这个脚本的路径放在PATH环境变量指定的路径列表中。Shell脚本不是复杂的程序,它是由上往下逐行解释执行的。脚本的第一行总是以“#!<Shell解释器文件路径>”开始,用来指定该脚本是使用那种Shell进行解释执行。 编写Shell脚本 1)使用VI或者其他任意的文本编辑工具创建一个名为HelloWorld.sh的文件,并在其中加入以下内容: [root@localhost ~]# vi