箭头函数和普通函数中的this
右值引用
C++11后引入了右值引用等特性,用来支持移动语义和完美转发,在了解右值引用前,需要了解一些前置的概念
- 左值(lvalue)
左值字面意义是在等号左边的值,左值是寻址的,具名的,有标识符的
有一个特点是,所有声明的变量都是左值 - 右值(rvalue)
右值字面意义是在等号右边的值,右值不可寻址,不具名
具体而言:
- 一个整数字面量是右值,因为它不对应一个内存存储位置,在汇编中,它存在于指令中的立即数字段
- 一个临时对象是右值,临时对象是为了写连续的表达式而被编译器支持的,当有例如
func(obj())
时,首先建立一个obj对象,这个对象没有名字,它实际上有一个对于的内存存储位置,但在这行代码执行完后就会被销毁,所以它叫做临时对象
cpp对临时对象有一个限制,因为临时对象是马上就会被销毁的,所以对临时对象的修会被抛弃
MATLAB微积分
Linux 神级文件管理器ranger
ranger是linux的一个终端文件管理器
函数传参的入栈顺序造成的一些细微影响
最近遇到了一个函数传参造成的问题,于是来稍微研究一下这个东西
Linux shell常用快捷键
在linux使用shell时常常会遇到一些使用场景需要大量重复敲击按键,带来了一些麻烦,所以学会一些快捷键是
必备的,但是有些快捷键几乎没用,也没用记忆的必要
首先声明一点,重点是记住快捷键的功能,而不是快捷键的按键绑定,因为对于不同的终端模拟程序,这些功能基本都是
提供的,但是按键绑定可能有所不同(说的就是PowerShell),另外有些终端是支持修改按键绑定的
以下的快捷键按键绑定都是标准的linux shell按键绑定,在Konsole上测试通过
matplotlib在linux平台上显示中文的解决方案
matplotlib 是python的可视化库,但是如果在matplotlib的图表中使用了中文,
会找不到中文字体而显示乱码,网上有很多教程解决这个问题,但是在我的linux上都不管用
经过不断尝试和google,终于找到了方法
可以随便选择能够选择中文的字体,但是要注意font family和字体名称的问题,以下以微软
雅黑为例