2020 1月6日

First_week 1.6-1.12

- Study_update
Mon. 递增和递减运算符①,条件运算符 cond?:expr1:expr2②
Tue. 位运算符(未搞懂),二进制(了解),模板①,函数模板②,,sizeof运算符③,逗号运算符
Wed. 类型转换(命名的强制类型转换)①
Thur. 简单语句,语句作用域,条件语句,if
Fri switch①,迭代语句while②,
Sat 工作…
Sun. 常量命名一般全大写,工作,for,typedef①

1.6 Monday

①除非必须,否则不用递增递减运算符后置版本,因为后置版本需要存储原始值以便于返回这个未修改的内容,这会对性能有一定影响。
②条件运算符可以嵌套。但是随着嵌套的层数增加,代码可读性急剧下降。

#include "pch.h"
#include <iostream>
#include <string>
using namespace std;int main()
{cout << "请输入成绩" << endl;int input;while (cin>>input&&input<=100){string str;str = input > 90 ? "优秀" : input > 60 ? "及格" : "不及格";//条件运算符嵌套cout << str;}
}//洋葱骑士

由于条件运算符的优先级非常低,长表达式建议在两端加上括号.特别是输出表达式。

1.7 Tuesday

位运算符

位与&,位或|,位异^,位反~,左移运算符<<,右移运算符>>.
①模板

定义:模板就是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数,从而实现了真正的代码可重用性。

分类:函数模板、类模板。

作用:模板用于表达逻辑结构相同,但具体数据元素类型不同的数据对象的通用行为。

理解(对比函数重载):
———重载函数:如果同一作用域内的几个函数名字相同但形参列表不同,我们称之为重载函数。这些函数接受的形参类型不一样,但是执行的操作非常类似。
1: int max(int x, int y) { return x > y ? x : y ; }
2: float max(float x, float y) { return x > y ? x : y ; }
3: double max(double x, double y) { return x > y ? x : y ; }
——— 模板:模板把类型参数化,即把上面的int/float/double定义为参数。

定义:函数模板,就是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表。这个通用函数就称为函数模板。

注意:1.凡是函数体相同的函数都可以用这个模板来代替,不必定义多个重载函数。 2.在调用函数时,系统会根据实参的类型来取代模板中的虚拟类型, 从而实现了不同函数的功能。

声明形式:

template <类型形式参数表(class/typename)>
返回类型 函数名 (形参列表)
{
函数体
}

示例
#include "pch.h"
#include <iostream>
#include <string>
using namespace std;template <typename T>//函数模板的声明
T add(T a,T b)
{T res = a + b;return res;
}int main()
{int a = 1, b = 2;int res = add(a, b);//int 类型string stra = "hello ", strb = "world";string strres = add(stra, strb);//string类型cout << res << endl;cout << strres << endl;
}//洋葱骑士

当函数模板被调用时,编译器会生成相应的模板函数。

注意:

1.函数模板的声明由模板说明和函数定义组成,template为模板关键字。
2.模板说明中的类型形式参数(T)在函数定义中至少出现一次。
3.函数参数列表中可以使用类型形式参数(T),也可以使用一般类型参数(int/char等)。
4.函数模板不允许自动类型转换。

③sizeof

sizeof运算符返回一条表达式或一个类型名字所占的字节数。

运算对象有两种形式,
sizeof(type)
sizeof expr
在第二种形式中,sizeof返回的是表达式结果类型的大小,并不实际计算其运算对象的值。

1.8 wednesday

①命名的强制类型转换
cast-name< type >(expression)
其中,type是转换的目标类型而expression是要转换的值。如果type是引用类型,则结果为左值。

cast-names是static_cast,dynamic_cast,const_cast和reinterpret_cast中的一种。

1.9 Thursday

简单语句

表达式语句的作用是执行表达式并丢掉求值结果。
语句块不以分号作为结束。

1.10Friday

①Switch

switch先对括号内的表达式进行求值,表达式里的值转换成整数类型,然后与每一个Case进行比较。
如果表达式与某个case匹配成功,执行该标签后的语句,直到到达switch的结尾或者是遇到一条Break语句为止。
case关键字和它对应的值一起被称为Case标签(case label)。case标签必须是整型常量表达式。任何一个Case标签的值都不能相同,否则会引发错误,default也是一种特殊的case标签。

②while

迭代语句通常称为循环,它重复执行某个操作直到满足某个条件为止,while和for在语句在执行循环体之前检查条件,do while语句先执行循环体,然后再检查条件。
当不确定要迭代多少次时,使用while循环比较好。

1.12Sunday

①typedef

可以用来定义类型的别名。

#include "pch.h"
#include <iostream>
#include <vector>
using namespace std;int main()
{vector<int> nums;//一般声明方式。typedef vector<int> Vint;//用typedef定义Vint作为类型别名。Vint nums2;//使用Vint直接定义。
}

2020.01-Study_update.1相关推荐

  1. 泰坦以太(以太流说) titan_ysl 2020.01.27

    泰坦以太(以太流说) titan_ysl 2020.01.27 从学习物理到现在,几十年来,我一直认为以太的存在能最合理地解释许多物理现象,但由于一直没人给于其适当的定义,导致其被废弃,从而让现代物理 ...

  2. Golandidea 2020.01破解版

    Golandidea 2020.01 链接: https://pan.baidu.com/s/1aFKsxAIbrEeEtMYpePmtbQ 提取码: 3y9j 1.安装成功,不要运行,将jetbra ...

  3. 【转载】语义分割综述2020.01

    转载: 作者: http://blog.csdn.net/john_bh/ 出处:https://blog.csdn.net/john_bh/article/details/107044528 论文链 ...

  4. 纪中集训2020.01.13【NOIP普及组】模拟赛C组总结————My First Time Write Summary

    纪中集训2020.01.13[NOIP普及组]模拟赛C组总结 题目编号 标题 0 [NOIP普及组模拟]取值( numbers.pas/cpp) 1 [NOIP普及组模拟]数对(pairs.pas/c ...

  5. 纪中集训2020.01.16【NOIP普及组】模拟赛C组总结+【0.Matrix】分析

    纪中集训2020.01.16[NOIP普及组]模拟赛C组总结+[0.Matrix]分析 题目: 0.matrix 1.product 2.binary 3.value 巨佬估分:100+100+40+ ...

  6. LHAPDF configure error - 2020.01.02

    LHAPDF configuration error - 2020.01.02 1. What I was doing on this bloody night 1.1 Before I run in ...

  7. 2020.01.02 52周存钱

    这个 示例是一个存钱记录 本示例涉及知识点: ①while循环实现案例 ②记录每周的存款数math库 ③用循环记录,迭代函数 ④用户灵活输入值,参数传入与全局变量 ⑤根据用户输入日期判断金额 ⑥dat ...

  8. linuxoracle静默安装应答文件修改_Windows7重要更新补丁安装包 2020.01.17

    2020年1月14日微软官方宣布正式停止支持Windows 7(以下简称Win7),除付费政企用户外,不再提供安全补丁或者更新服务.那么以后win7的更新要怎么办?难道只能"裸奔" ...

  9. 《惢客创业日记》2020.01.28-02.06 惢客发展的三个阶段(上)

    今天,开始分享我的想法,也可以说是"丑话说到前面"的续篇,只不过,想一次表达清楚.这篇日记不是今天写的,已经花了我近一个星期的构思时间,今天只是做一下梳理和总结.说实话,写关于惢客 ...

  10. WIFI安全:利用Kali自带的Aircarck-ng工具包,以及Fluxion渗透wap/wap2无线WIFI,超详细。(前言:无线网卡选择,环境详尽信息)2020.01

    前言 无线网卡的选择 在Kali中,命令iw list查看网卡详尽信息或者命令lsusb查看USB接口设备. 无论我们选取哪款无线网卡做渗透测试,至少要满足以下两点:支持AP模式(可作为evil无线接 ...

最新文章

  1. django 数据库迁移注意事项
  2. 【完整代码】使用Semaphore实现线程的交替执行打印 A1B2C3D4E5
  3. Springboot——HelloWorld
  4. mpeg2,mpeg4,h264编码标准的异同
  5. java applet audion_java applet audion
  6. pythonfor循环100次_以写代学: python for循环 range函数 xrange函数
  7. hdu 1232 经典并查集应用
  8. 创建crawlspider爬虫 学习笔记
  9. Emacs+Lisp环境搭建
  10. c52语言网红楼梯流水灯程序,单片机程序-利用C52库函数实现左右流水灯
  11. 在线旅游网站技术讲解
  12. 菜菜的sklearn-01决策树完整版
  13. 编写程序输入年利率k(例如2.52%),存款总额total(例如100000元),计算一年后的本息并输出。
  14. Visual C++网络编程经典案例详解 第9章 实用播放器 编程基础 播放mp3文件 读取文件
  15. 第3章 Hive数据类型
  16. np.arange函数
  17. 图解|网络究竟是如何运作的?
  18. unity透过UI去点击物体
  19. 第四届vex机器人亚洲锦标赛_2019第十三届VEX亚洲机器人锦标赛在韩国开赛
  20. 国际通用计算机编码,ASCII 编码(美国信息交换标准代码)完整对照表

热门文章

  1. eclipse安装lombok插件(小辣椒)
  2. setw()函数以及setfill()函数用法
  3. DAY DAY UP 2
  4. linux 命令---持续更新
  5. MSSQL SERVER DBA 2门证书考试
  6. 英文写作神器Grammarly for Word下载安装教程
  7. UG编程基本操作及工艺介绍分析
  8. 请问一个新手要怎么学习3Dmax建模?
  9. (C语言)C语言中的strlen和sizeof
  10. 初识scrapy框架,美空图片爬虫实战