从4行代码看右值引用 概述 右值引用的概念有些读者可能会感到陌生,其实他和C++98/03中的左值引用有些类似,例如,c++98/03中的左值引用是这样的: 这里的int&是对左值进行绑定(但是int&却不能绑定右值),相应的,对右值进行绑定的引用就是右值引用,他的语法是这样的A&&,通过双引号来表 ...
分类:
其他好文 时间:
2018-10-14 01:47:49
阅读次数:
156
我们都知道c++是完全兼容c的,而且对c做了一定的优化。 c++与c的不同在于: 1.实用性的增强:变量可以任意定义了 在c中:变量的定义必须在函数使用之前,不然在有些早期的编译器中可能出错。 在c++中:变量可以任意定义,不过要注意变量的作用域和生存周期。 2..对全局变量检测能力的增强:不允许有 ...
分类:
编程语言 时间:
2018-10-10 12:11:25
阅读次数:
171
前置++和后置++,有4点不同: 返回类型不同、形参不同、代码不同、效率不同 返回类型不同 前置++的返回类型是左值引用,后置++的返回类型const右值。而左值和右值,决定了前置++和后置++的用法。 ++a的返回类型为什么是引用呢? 这样做的原因应该就是:与内置类型的行为保持一致。前置++返回的 ...
分类:
编程语言 时间:
2018-10-05 20:22:39
阅读次数:
392
Kakuro Extension 题意:现在有一个n*m的矩形,现在每个白色的点都可以填 [1, 9] 中的一个数字。现在要求每行加起来的值等于左边的那个黑块的右值,每列加起来等于上边那个黑块的左值,求合法方案数。 题解:因为每个点至少是1,如果直接建边跑最大流的话会导致某些点的值为0,现在要保证每 ...
分类:
其他好文 时间:
2018-10-03 21:55:48
阅读次数:
181
https://blog.csdn.net/hyman_yx/article/details/52044632 左值、右值 在C++11中所有的值必属于左值、右值两者之一,右值又可以细分为纯右值、将亡值。在C++11中可以取地址的、有名字的就是左值,反之,不能取地址的、没有名字的就是右值(将亡值或纯 ...
分类:
编程语言 时间:
2018-09-30 10:14:19
阅读次数:
182
1 # 匿名函数:为了解决那些功能很简单的需求而设计的一句话函数 2 3 # 如 4 def calc(n): 5 return n ** n 6 print(calc(10)) 7 8 # 换成匿名函数,匿名函数必须要用lambda关键字写 9 # 左值为函数名,冒号前面的是参数,冒号后面的是返回 ...
分类:
其他好文 时间:
2018-09-16 17:16:56
阅读次数:
179
C语言运算符 一、算术运算 C语言一共有34种运算符,包括常见的加减乘除运算。 ①. 加法:+ 还可以表示正号 ②. 减法:- 还可以表示负号 ③. 乘法:* 非数学意义上的X ④. 除法:/ 注意1/2的值为0而非0.5 ⑤. 取余(模运算):两个整数相除之后的余数(注意两边都必须是整数,带符号只 ...
分类:
编程语言 时间:
2018-09-16 15:36:15
阅读次数:
226
千万注意线程不要比主线程晚结束,主线程一旦结束,对象将被销毁 std:thread 代表了一个线程对象 this_thread:是一个命名空间,对当前调用者线程进行操作 如果把可调用对象作为参数传递给子线程的构造函数,则把该调用对象复制一份给子线程 如果需要传递可调用对象的左值引用给子线程,采用st ...
分类:
其他好文 时间:
2018-09-13 22:32:02
阅读次数:
170
1)、标准:分别隶属于两个不同的标准委员会。C以C99标准为主流,C11已经发布;C++以C++98/03为主流,C++11/14也日趋流行。 2)、语言本身: 1、C++是面向对象语言,C是面向过程语言。 2、结构:C以结构体struct为核心结构;C++以类class为核心结构。 3、多态:C可 ...
分类:
编程语言 时间:
2018-09-08 00:42:34
阅读次数:
268
1.生成器函数进阶(一) 1 # 生成器函数进阶 2 3 def generator(): 4 print(123) 5 num = yield 1 # 当第一个__next__发生时,yiled 1先被执行,被返回,停在了这里,之后当send来了后,send的参数先赋值给了yield的左值,之后再 ...
分类:
其他好文 时间:
2018-09-05 00:48:54
阅读次数:
138