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. Go 语言 fmt.Sprintf (格式化输出)

    Printf().Sprintf().Fprintf() 函数的区别用法是什么? 都是输出格式化字符串,只是输出到的目标不一样: Printf() 是把格式化字符串输出到标准到标准输出(一般是屏幕,可 ...

  2. 创业学习---《如何展开竞争情报调研》--D-1.调研模块---HHR计划---以太一堂

    第一:<开始学习> 1,投资人看人标准:人品好:创业热情:学习能力. 2,思考题:请你预判一个最靠谱的方向来创业,你会怎么调研呢? 3,预热思考题: (1)在这个赛道,究竟有哪些重要竞争对 ...

  3. 吴裕雄 python 机器学习——模型选择数据集切分

    import numpy as np from sklearn.model_selection import train_test_split,KFold,StratifiedKFold,LeaveO ...

  4. Android学习01

    一.线性布局(Linerlayout)和相对布局(Relativelayout) 线性布局可以分为水平线性布局(vertical)和垂直线性布局(horizontal)这两种布局方式weight权重按 ...

  5. powerbuilder连接oracle数据库

    一.打开已经安装好的pb9.0,主界面菜单栏有个两个圆柱形就行数据库连接,点击database. 二.选择oracle版本,由于数据库版本是9i,可以使用084 oracle8/8i.右键--选择ne ...

  6. 使用UUID防止文件重名

    在原文件名的基础上加 UUID.randomUUID().toString()

  7. PyQt5操作SQLite数据库

    1.操作SQLite数据库import sysfrom PyQt5.QtSql import QSqlDatabase,QSqlQueryfrom PyQt5.QtCore import * def ...

  8. PAT T1025 Keep at Most 100 Characters

    删除字符的镜像问题,状态转移方程一样~ #include<bits/stdc++.h> using namespace std; ; ; string s; long long dp[ma ...

  9. servlet类常用代码

    1.设置响应编码格式 response.setContentType(");

  10. 关闭AnyConnect登录安全警告窗口

    一.问题描述:使用AnyConnect client连接时,如何关闭的安全警告窗口? 二.原因分析:   AnyConnect Server(ASA)和AnyConect client(PC)上没有受 ...