decltype()类型指示符

设定一个返回值是int的函数f(),通过使用

  1 decltype(f()) sum = x;

此时decltype()接受一个从f()返回的int型的值,并将sum设置为int型。

auto自动类型

用auto遍历二维数组

  1 #include <bits/stdc++.h>
2 using namespace std;
3 int main ()
4 {
5 constexpr size_t ss = 5;
6 int ia[ss][ss];
7 for (size_t i = 0; i != ss; ++i)
8 for (size_t j = 0; j != ss; ++j)
9 ia[i][j] = i * ss + j;
10 //size_t其实时一个宏定义网上说时unsigned int,这是保证在各个平台上都能用
11 size_t cnt = 0;
12 for (auto &rom : ia)
13 for (auto col : rom)
14 col = cnt;
15 ++cnt;
16 return 0;
17 }

使用using来定义新的类型

  1 using int_array = int[4];

这就是将4个int大小的的数组 封装成一个类型,并命名为int_array

assert预处理宏定义

它也就是一个预处理变量,行为类似于内联函数。

用法:

假设exp是一个判断条件,如果exp为真,则它什么也不做,为假则输出信息并阻止程序的进行。

作用:常用于检查不能发生的条件

eg:

  1 #include<cassert>
2 #include<iostream>
3 using namespace std;
4 int main(){
5
6 for(int i = 0; ; ++ i){
7 assert(i < 10);
8 }
9 return 0;
10 }

初始化赋值方式

int units_sold(19);

int units_sold{19};

int units_sold = 0;

int units_sold = {0};

用花括号来初始化值得到了全面的应用

--,++一点东西

在能用前置版本就用前置版本,因为后置版本需要先储存在工作,毫无疑问前者相对快点。

cctype头文件中的函数

isalnum(c) c是字母或数字时为真

isalpha(c) 为字母时为真

iscntrl(c) 为控制子字符是为真

isdigit(c)为数子时

isgraph(c)不为空格但可打印是为真

ispunct(c)为标点符号时为真

isspace(c)f当为空白符时为真

isupper(c)为大写字母时

islower(c)小写字母时为真

isxdigit(c)为十六进制时为真

tolower(c)如果时达写就输出对应的小写,否则原样输出

toupper(c)如果是小写字母则输出其大写,否则原样输出

一点位运算符

>> 右移

<< 左移

& 位与 就是保留两个二进制数相同的数其他不同的都变为零

^ 位异或 就是只能对应位置有一个1否则为零

| 位或 两个二进制数对应对的位置至少一个为1则是1 否则为0

~ 位求反 也就是将1->0,0->1;

c++11的记录的更多相关文章

  1. C++11 语法记录

    转自:http://blog.csdn.net/crayondeng/article/details/18563121 一.Lambda表达式 C++ 11中的Lambda表达式用于定义并创建匿名的函 ...

  2. windows 下使clion支持c++11操作记录

    最近用上了windows下的clion,发现默认安装的MINGW版本太低,导致所带的gcc版本竟然是3.5的,实在太老了,不支持c++11,于是手动修改了mingw的版本.首先去mingw的官网下载最 ...

  3. c++11多线程记录0

    两种并发编程模型 多进程 进程间通信常用的几种方式: 文件 管道 消息队列 多线程 一个进程中存在的多个线程,通常通过共享内存来通信,(说的非常非常粗俗,就是通过类似"全局变量"的 ...

  4. c++11多线程记录6:条件变量(condition variables)

    https://www.youtube.com/watch?v=13dFggo4t_I视频地址 实例1 考虑这样一个场景:存在一个全局队列deque,线程A向deque中推入数据(写),线程B从deq ...

  5. c++11多线程记录5: Unique Lock和延时初始化

    https://www.youtube.com/user/BoQianTheProgrammer 视频网址 Unique Lock unique_lock和lock_guard类似,都是mutex的w ...

  6. c++11多线程记录4:死锁

    简单示例 举个例子,桌上有一支笔和一张纸,小A和小B都要拿到纸笔写字 小A拿了笔,小B拿了纸,这时就形成了死锁(两人都不愿意让出纸笔). 其实只要稍加控制就可以避免这种情况:规定必须先拿到纸再能去尝试 ...

  7. c++11多线程记录3: 数据争用和Mutex的使用

    https://www.youtube.com/watch?v=3ZxZPeXPaM4 学习视频 数据争用 简单来说就是存在多个线程同时对某个共同的对象进行读写(至少有一个线程在做写操作),造成读取这 ...

  8. c++11多线程记录2:线程管理

    线程没有调用join和detach thread对象必须调用join或者detach,否则程序会终止 例如: void func() { std::cout << "hello, ...

  9. c++11多线程记录1 -- std::thread

    启动一个线程 话不多说,直接上代码 void func(); int main() { std::thread t(func); //这里就开始启动线程了 t.join(); // 必须调用join或 ...

随机推荐

  1. cgroup的学习笔记

    1.cgroup是什么? cgroup是一个linux内核提供的机制.目的是为了做资源隔离,资源限制,资源记录. 2.cgroup怎么安装? yum install cgroup service cg ...

  2. phpStudy的虚拟站点域名管理

    使用phpStudy在本地环境,使用虚拟域名访问本地站点. 步骤: 0x01  修改配置文件 打开站点域名管理 添加你本地站点的路径,第二域名可以不填,网站端口不填的话默认为80. 先点击新增,再点击 ...

  3. net core调用MimeKit发送QQ邮件

    一.在QQ邮箱内申请授权码,具体参考请官方文档 二.具体代码 public void TestSendMailDemo() { MimeMessage message = new MimeMessag ...

  4. CSS3的一个伪类选择器:nth-child()

    CSS3的一个伪类选择器“:nth-child()”. Table表格奇偶数行定义样式: 语法: :nth-child(an+b) 为什么选择她,因为我认为,这个选择器是最多学问的一个了.很可惜,据我 ...

  5. 红帽RHCE培训-课程2笔记目录

    目录 1 kickstart自动安装 DHCP+TFTP(syslinux) +FTP +KICKSTART ~/anaconda-ks.cfg system-config-kickstart 2 g ...

  6. 李超线段树(segment[HEOI2013]-洛谷T4097)

    (neng了好久好久才糊弄懂得知识点...) 一.李超线段树 在线动态维护一个二维平面直角坐标系, 支持插入一条线段, 询问与直线x = x0相交的所有线段中,交点y的最大/小值 (若有多条线段符合条 ...

  7. GO:go语言介绍

    什么是go语言 Google开源 编译型语言 21世纪的C语言 go开发团队: go的特点 语法简洁 开发效率高 执行性能好 发展现状 最近新兴的行业公司一般会使用go语言作为主要开发语言 容器虚拟化 ...

  8. javaweb项目运转流程

    做web项目,不仅要会做,还需要了解其工作流程,为什么这么做!这些知道了.其他的都是渣渣.上图!对于web 项目了解他的运行流程之后,基本其他的都不是问题.web项目还是很简单的 这是简化的开发时常用 ...

  9. disconf---分布式配置管理平台的搭建(linux版本)

    一.获取disconf的代码 地址:https://github.com/knightliao/disconf 二.搭建基础服务 ①redis,mysql,zookeeper在博主的其他博文中有相应搭 ...

  10. 计算机二级C语言选择题错题知识点记录。

    计算机二级C语言选择题错题知识点记录. 1,在数据流图中,用标有名字的箭头表示数据流.在程序流程图中,用标有名字的箭头表示控制流. 2,结构化程序设计的基本原则:自顶向下,逐步求精,模块化,限制使用g ...