摘要: Vim的帮助功能http://vim.wikia.com/wiki/Learn_to_use_help函数内查找http://vim.wikia.com/wiki/Search_in_current_function块跳转http://vim.wikia.com/wiki/Jumping_to_the_start_and_end_of_a_code_block 阅读全文
posted @ 2012-10-19 17:50 斯啦丝拉 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 1. 系统配置1.1. 修改登录屏幕显示的用户名System Settings -> User Accounts 里边更改,还可以改变用户头像1.2. 输入法卸载iBus安装Fcitx 使用ctrl + space开启,使用ctrl切换(我更改为shift)1.2. 使用VMWare的共享文件夹功能首先在虚拟机选项里配置好要共享的文件夹然后可以在 /mnt/hgfs/ 中找到共享的文件夹2. 软件安装配置2.1 CTagssudo apt-get install exuberant-ctags - 用Vim的代码补全ctags -R --extra=+q --fields=+iaS -- 阅读全文
posted @ 2012-10-19 17:43 斯啦丝拉 阅读(673) 评论(0) 推荐(0) 编辑
摘要: 引言C++的“=”实际有很多很多陷阱。在大部分情况下,“=”表示赋值,尤其是C语言学过来的,更有这样的体会。以下两者的执行结果是等效的:// 示例Aint a = 3;// 示例Bint a;a = 3;难免会有直观的认识,int a = 3 中,首先创建一个int的名为a的对象,然后将3赋值给a。而示例B中,将这一过程拆分成了两部。↑↑恩,万恶的根源↑↑C++中“=”的语义分类“=”其实有两种作用:1. 参与构造;2. 赋值。参与构造类似于初始化,是狭义的初始化(或者是说协助定义,异或有其他更好的说法?)——在一些场合,对从未赋值过的对象进行第一次赋值,也叫做初始化——而这里的“初始化”仅指 阅读全文
posted @ 2012-10-18 13:15 斯啦丝拉 阅读(1073) 评论(0) 推荐(0) 编辑
摘要: 运行AWK程序awk '脚本内容' - 也可以把这些写到sh脚本文件中awk -f 脚本文件名在脚本文件中第一行写入"#!/bin/awk -f",然后在shell中执行脚本文件PATTERNAWK程序的组织形式如下。pattern { action }AWK程序顺次读取输入的每一行,然后判定改行是否符合pattern,如果pattern为true,则对应的action执行。有如下pattern:[空] - 这个对应的action永远执行BEGIN - 所有输入之前执行END - 所有输入之后执行printaction中最常用的是print,用法:print 阅读全文
posted @ 2012-10-08 21:10 斯啦丝拉 阅读(835) 评论(0) 推荐(0) 编辑
摘要: 原文转载自水木发信人: fentoyal (fentoyal), 信区: CPlusPlus 标题: 60个你可能不知道的C++细节!! 发信站: 水木社区 (Thu Oct4 06:51:48 2012), 站内 标题党了一下,其实是前阵子记得关于C++零碎知识一些读书笔记。这东西经常自己留意不到。有部分其实一般也都用不上(因为用上的都知道了),还有很大一部分是C++11的一些容易忽视(by myself)的细节。 大牛可以帮忙查查错,初学者可以过一遍查缺补漏。写成英文是因为要打算给别人share下,要不自己也懒得整理。下文中,有些词汇需要解释,见最后边的注解... 阅读全文
posted @ 2012-10-04 12:24 斯啦丝拉 阅读(794) 评论(0) 推荐(0) 编辑
摘要: C++有三种访问控制符号:public,protect,private,同时,也有三种继承方式:public,protect,private。访问控制访问控制是对类成员而言的,对非类成员而言,访问控制是不适用的。在Java,C#中,也有访问控制的概念,不过Java和C#中,访问控制的用法与C++不用:class Foo{ // C++支持这种形式public: int a;};class Foo{ // C#支持这种形式 public int a;}public木有任何限制private只能被类声明中的成员函数和友元访问。注意~这里是“类声明中”而不是“实例中”,同一个类的... 阅读全文
posted @ 2012-08-12 10:04 斯啦丝拉 阅读(4476) 评论(0) 推荐(0) 编辑
摘要: 控制C++的Stream的格式,主要有三种方法,操作flag、使用manipulator和使用stream的成员函数。Manipulatormanipulator本质是一个函数,但是由于Stream类对<<做了重载,所以可以使用<<调用manipulator,看起来十分赏心悦目。ostream& operator << (ostream& (*op)(ostream& strm)){ // ostream& (*op)(ostream&) - 返回值为ostream&, 参数类型为ostream&的一个 阅读全文
posted @ 2012-07-25 16:06 斯啦丝拉 阅读(2670) 评论(0) 推荐(0) 编辑
摘要: C++11中对LValue和RValue的界定更加详细而合理(但是也更加麻烦了)1章节:C++11的新分类介绍2章节:不同值之间的转换3章节:对一些常见的表达式,如何区分他们是什么值?1. 表达式分类所谓Value,是对表达式而言的。一个表达式可以分为以下几种Value,下边详细说明1.1. lvalue(左值)lvalue指代一个函数或者对象。例如:E是指针,则*E是lvalue一个函数的返回值是左值引用,其返回值是lvalue。例如int& foo();1.2. xvalue(expiring value,临终值)xvalue指代一个对象,但是和lvalue不同,这个对象即将消亡。 阅读全文
posted @ 2012-07-01 19:05 斯啦丝拉 阅读(5149) 评论(0) 推荐(1) 编辑
摘要: 原文地址http://unixjunkie.blogspot.com/2009/05/c-new-foo-vs-new-foo.html翻译加修订问题是:在C++中,以下两者有何不同new Foo;new Foo();两者都是正确的语句,它们都返回一个指针,指向新创建的Foo(存放在堆中)。但是,当Foo是POD类型时,它们的表现有所不同。PS:POD类型是指一个类或对象,其成员是原生数值类型(int, unsigned char, float, bool等等)或者另外一个POD类型。POD对象看起来像C语言风格的结构对象,例如:// PODclass Foo { public: ... 阅读全文
posted @ 2012-06-19 12:35 斯啦丝拉 阅读(1708) 评论(0) 推荐(0) 编辑
摘要: 警:此文是理论深度文,如果想从这里找源代码或者“神马是归并排序”之类的东西的话,提前放弃吧。这文的来源主要是MIT的算法导论。主定理 Master Theorem这中文名字十分蛋疼(其实英文名字也十分蛋疼),我感觉确切地应该叫做递归复杂度判定定理,不过姑且就这么用吧。分治法 Divide and Conquer分治法分为三步:分、治、合(Divide, Conquer, Combine)。分是递归的,不是说分一次就结束了,分后的子问题,被看做一个完整的问题,再进行分的过程,否则,算法的复杂度是不会降低的。分治法的时间复杂度计算使用公式:然后套用主定理求解,PS:不适用主定理时,就悲剧鸟~分治法 阅读全文
posted @ 2012-06-04 22:00 斯啦丝拉 阅读(5336) 评论(0) 推荐(1) 编辑