代码改变世界

随笔分类 -  开发经验总结

Google C++编程风格指南

2013-10-13 18:15 by Rudrj2, 2043 阅读, 收藏, 编辑
摘要: 前言 从小就写字很挫,所以受够了被人鄙视的感觉,今天有个coder突然跟我说,你的代码怎么像小孩写的一样,顿时心情沮丧的极点。越来越发现一致的编程风格的重要性,于是把Google的C++编程风格指南看了一遍, 这里记录下于自己有益的rules。当规则有多个选择时,这里只记录个人习惯的用法, 并不代表它是唯一的用法。命名约定命名管理是最重要的一致性规则,因此我把它放在最前面。尽可能给出描述性名称。int num_errors; int num_completed_connections;文件名全部小写,用下划线做连接符。my_useful_class.ccC++文件以.cc 结尾,头文件以.h. 阅读全文

AVR GCC对端口的操作指南

2013-08-12 20:13 by Rudrj2, 2291 阅读, 收藏, 编辑
摘要: 1. AVR GCC for AVRI.I/O端口API1. BV用法:BV(pos);说明:将位定义转换成屏蔽码(MASK)。与头文件io.h里的位定义一起使用。例如,置位WDTOE和WDE可表示为“BV(WDTOE) | BV(WDE)”2. bit_is_clear用法:uint8_t bit_is_clear(uint8_t port, uint8_t bit);描述:如果port的bit位清零则返回1。此函数调用sbic指令,故port应为有效地址。3.bit_is_set用法:uint8_t bit_is_set(uint8_t port, uint8_t bit);描述:如果po 阅读全文

网易笔试+面试

2013-04-08 18:39 by Rudrj2, 3239 阅读, 收藏, 编辑
摘要: 话说笔试是我的处子笔,发挥还算正常,有幸进入面试阶段(处子面),由于学院不在合肥本部的特殊原因,我没有在合肥参加宣讲会,而是去了上海交通大学站,笔试时间是21号晚上6:30开始到8:30。 观察了一下考场,人数不多,大约100号人。。那天由于很晚回来,而且之后几天实验和导师的任务,很忙没时间写笔经。。那就先从笔试说起吧!~网易笔试还是很难的,最后我看了下我的评分是B级,具体怎么弄的,我也不是很清楚,反正这是我的评分。ps:偷瞄的。 第一部分:计算机基础(选择题都是多选题) 1、选择题:按照e1、e2、e3、e3、的顺序进栈,出栈的顺序可能是下面的哪种? 看了下都可以。所以直接写了A... 阅读全文

Android开发经验总结

2013-03-13 18:43 by Rudrj2, 2297 阅读, 收藏, 编辑
摘要: 1、有一个方法,有一段类似于下面这样:new Thread(){ public void run(){ // 做了一些数据库操作 db.close(); } }.start(); 结果运行过程中,发现有时候会报数据库已经锁定的异常。最后才定位到上面这段代码。原因是在上面的run()方法中打开了数据库,这个时候会自动锁定Database,如果在关闭数据库之前,另外一个线程B也进行数据库操作,就会报这个异常。如果数据库已经关闭之后,另外一个线程B请求数据库操作,就没有问题。所以在新线程中进行数据库操作,或者是TimerTask中进... 阅读全文

Sublime Text2 编译和运行C/C++程序(windows)

2013-01-02 23:50 by Rudrj2, 40772 阅读, 收藏, 编辑
摘要: Sublime Text2的高亮显示代码,非常好用,界面也非常漂亮,Sublime Text2工具栏有编译项,所以想让它来编译C和C++代码,不想每次几行代码也都打开visual studio,网上有gcc的解决方案。我想用微软的编译器,因为电脑里面已经装了Visual studio 2010,所以想用系统已有的编译器了.<1> 如果你的编译环境是GCC并且已经可以在命令行里用gcc编译源文件,那么Sublime Text2不要任何配置就可以对单个源文件进行编译和运行,下面的东西可以不看了。<2> 如果没有GCC或者就是希望用Visual Studio里的编译器CL进行 阅读全文

古老Ubuntu 安装 EDB 的奇葩旅程

2012-11-25 00:38 by Rudrj2, 2100 阅读, 收藏, 编辑
摘要: ubuntu下安装edb在如下地址下载:http://www.codef00.com/projects#Debugger$ sudo apt-get install libqt4-dev$ sudo apt-get install libboost1.40-all-dev或者:$sudo apt-get install libboost$ tar zxvf debugger-0.9.18.tgz$ mv debugger /usr/local/src/$ cd /usr/local/src/debugger$ qmake -makefile DEFAULT_PLUGIN_PATH=" 阅读全文

ListActivity源码分析

2012-11-17 18:27 by Rudrj2, 404 阅读, 收藏, 编辑
摘要: 最近老是和ListActivity过意不去,碰到了它的几个问题,干脆读下它的源码吧,搞清楚它的内部机制,有利于问题的解决。 Android中的ListActivity其实就是一个自带ListView的Activity,ListActivity它位于命名空间:android.app之下,从它的源代码就可以清楚的看到,ListActivity继承了Activity,它的基本用法网上有很多资料,随便GOOGLE一下,到处都是,下面主要是分析一下它的Java源代码.(转自王三丰) 1 public class ListActivity extends Activity { 2 /** 3 *... 阅读全文

关于VS2008编译错误"error LNK2005: 已经在 .obj 中定义"

2012-11-06 21:07 by Rudrj2, 1029 阅读, 收藏, 编辑
摘要: 无意中遇到了这样的编译问题, 于是google,发现在.h文件里定义变量,发生这问题的概率是灰常大的.下面这段字是参考网上的说法:当你第一个使用这个头的.cpp文件生成.obj的时候,int i 在里面定义了当另外一个使用这个的.cpp再次[单独]生成.obj的时候,int i 又被定义然后两个obj被另外一个.cpp也include 这个头的,连接在一起,就会出现重复定义.不过经过一轮研究发现.. 其实这说法不怎么正确.. 最起码对VS来说..经过实验, 发现只要有两个cpp同时包含一个定义了变量的.h文件,就会提示错误.再回想下编译原理,obj是什么? 其实就是cpp翻译后的一坨中间代码. 阅读全文

Ruby 2.0 发布首个预览版

2012-11-04 13:49 by Rudrj2, 145 阅读, 收藏, 编辑
摘要: 该版本改进记录: - Refinements - Keyword arguments - Enumerator#lazy - Module#prepend - Converting convention to Hash: #to_h - %i: a literal for symbol array - regexp engine is changed to Onigmo - DTrace supporthttp://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/46348 阅读全文