Ruby元编程之Proc对象
Proc
Proc对象其实就是将代码块(block)转换成对象的块。方式有大致几种:
1.Proc对象
inc = Proc.new{ |x| x + 1 }
inc.call(3) #=>4
2.lambda方法
inc = lambda{ |x| x + 1 }
inc.call(3) #=>4
Vim下的的插件管理神器——Vundle
断断续续用Vim也不少时间了,但是从来没有进行过复杂的Vim配置,每每需要插件都是网上寻求安装方式。但是当插件多了管理也便变得繁琐,最后终于让我结识了插件管理神器——Vundle,用过的人都说好用,所以我便也尝试了,网上也有一部分人采用pathogen来进行插件管理,但是据说没有Vundle好用,也便没有尝试,下面对我使用Vundle做一个总结。
首先Vundle采用git插件的git repo以及vim-scripts维护的GitHub repo, 自动安装, 更新和卸载插件. 把这些繁杂的工作变得简单, 甚至, 成为一种享受.
##安装 Vundle地址,上面安装及配置步骤已经很详细,我在此再赘述下:
1.拷贝Vundle $ git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
上面步骤将vundle拷贝到本地的~/.vim/bundle/vundle目录下
2.Vundle配置
以下是我的配置文件:
…Git的相关操作
##查看Git远程库地址 建立了远程库后,许久没操作,突然忘了其对应的具体远程库的url。可通过以下命令来查看:
$git remote -v
-v选项是–verbose的简写,最后结果为:
origin git@github.com:xautjzd/RubyExample.git (fetch)
origin git@github.com:xautjzd/RubyExample.git (push)
要查看详细信息,则可以通过如下命令查看:
$git remote show remote-name
##添加远程库地址 $git remote add reponame url
##远程库的重命名 $git remote rename oldname newname
…Ruby基础之Array,String and Hash
##Array
数组通常都是同种元素的集合,元素可以为单个的变量,如数值或者字符串,但是也可以为数组和Hash等复杂对象。
###数组表示矩阵
其实数组可以用来表示矩阵,矩阵可以被看作数组的数组,也就是每个数组元素都是数组。三行三列的矩阵可以表示为:
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
“5”的位置则是: a[1][1]
###数组初始化陷阱
初始化数组时,若要使用数组对象或Hash对象作为初始值的元素时必须非常小心,否则便会陷入陷阱当中,如下所示:
a = Array.new(3, [0, 0, 0])
…Ruby基础
##变量分类
- 局部变量
一般以小写字母或下划线开头,当多个单词组成一个变量时,单词间用_分隔。局部变量一般用在代码快里面
- 全局变量
全局变量在整个ruby程序中都可以访问,无论他们在哪被定义。全局变量以$开头。eg:
$global_variable = 10
- 实例变量
实例变量的范围则是类的实例,属于某个类的实例所有,实例间相互独立。实例变量以@开头。eg:
@instance_variable = 10
…