[Emacs] 汇总

1、 dired的使用:M-x dired 进入该模式,使用C-h f使用帮助。
几个快捷键: +增加目录 d增加删除记号 x执行 C复制文件 ^进入上层目录
2、outline-minor-mode的使用:
可以参见http://learn.tsinghua.edu.cn:8080/2001315450/emacs_outline.html, 说的比较详细,主要是首先在.emacs中设置方便的快捷键(setq outline-minor-mode-prefix [(control o)]),再设置在进入LaTeX-mode的使用自动启动outline-minor-mode:(add-hook ‘LaTeX-mode-hook ‘outline-minor-mode)
这样在打开一个*.tex文件后就可以使用outline-minor-mode了。几个主要的命令包括:
1、全局: C-o C-a 全部显示 C-o C-q 全部折叠 M-n C-o C-q 折叠到n级目录,根目录为一级;
2、局部:C-o C-d 当前子树被隐藏,C-o C-o 其他子树被隐藏
C-o C-i 显示当前子树的树干, C-o C-e 显示当前的Entry, C-o C-k 显示子树全部内容
C-o C-n (outline-next-visible-heading) 移动到下一个可见标题。
C-o C-p (outline-previous-visible-heading) 移动到上一个可见标题。
C-o C-f (outline-forward-same-level) 移动到下一个同级可见标题。
C-o C-b (outline-backward-same-level) 移动到上一个同级可见标题。
C-o C-u (outline-up-heading) 到上一级标题
3、基本编辑命令:
文件操作的几个方法:C-x C-f: open file C-x C-s: save buffer C-x C-c: quit emacs C-x C-b: list buffer; C-x 1: Delete all but one window; C-x u: undo
察看:C-v: Next page; C-b: back a latter; C-f: next latter; C-n: next line; C-p: back one line;
M-*…
帮助:C-h c: show command use; C-h f: C-h a …

[VC]图形工具条、进度条、 CVS、NTGraph等

1、使用Toolbar Creator创建需要的工具条(正常和失效)

2、使用http://www.codeproject.com/docking/TrueColorToolBar.asp中的两个文件加入

项目,使用CTrueColortoolBar替代MainFrame中的CToolBar并在OnCreate函数中增加m_wndToolBar.LoadTrueColorToolBar(48, IDB_NORMAL, IDB_NORMAL, IDB_DISABLED);其中第一个数字为一个按钮的宽度,后面分别是normaldisabled时候图片对应的resource ID

二、在状态栏上添加进度条:

使用CProcessBar,codeproject上可以找到。

三、MFC相关:

1、程序退出

直接关闭程序会给CMainFrame发送WM_CLOSE消息,调用CFrameWnd::OnClose进行关闭的处理,其他的ID_APP_EXIT,也是通过发送WM_CLOSE信息实现的,如果在在关闭前处理一些事务,则可以在CMainFrame中重载OnClose函数,此时如果要访问View,直接引入头文件会造成错误,可以在CMyView申明之前加上class CMyDoc;的申明即可。

2、处理系统菜单等:GetSysMenu()获得系统命令菜单进行处理,在precreatewindow中使用cs来设置风格。

四、CVS FOR VC

TamTam CVS: 没有破解,不注册没法用

PushOK Proxy CVS: 不注册可以正常使用30.

目前使用基于Windows窗口的TortoiseCVS,免费推荐!

五、MFC绘图控件NTGraph

参见http://www.codeproject.com/miscctrl/ntgraph_activex.asp

曾国藩家书一刚毅

至于刚毅之气,决不可无,然强毅与刚愎有别。古语云:自胜之谓强。曰强恕,强为善,皆自胜之义也。如不惯早起,而强之未明即起;不惯庄敬,而强之坐尸立斋;不惯劳苦,而强之与士卒同甘苦,强之勤劳不倦,是即强也。”,又云”男以懦弱无刚为大耻”
曰:要害啊…

[VC2003] warning C4267 & etc

warning C4267: ‘=’ : conversion from ‘size_t’ to ‘DWORD’, possible loss
of data 您将收到这个警告,因为所有默认 C++ 项目都使用 -Wp64 选项进行编译,该选项会通知编译器监视 64 位可移植性问题。
在项目属性中去掉-Wp64选项可以去掉许多无必要的warning。

gdb 调试程序

1、需要在编译时候增加 -g 选项
2、在emacs中使用 M-x gdb 开始调试,r: 开始运行;b main: 在main初设置端点;l: 打印当前附近的代码; up: 进入上一级函数;p: 打印变量;n: 下一步;s: 下一步(跳入函数);现就记住这些

曾国藩四条遗嘱

一曰慎独则心安。自修之道,莫难于养心;养心之难,又在慎独。能慎独,则内省不疚,可以对天地质鬼神。人无一内愧之事,则天君泰然,此心常快足宽平,是人生第一自强之道,第一寻乐之方,守身之先务也。
二曰主敬则身强。内而专静统一,外而整齐严肃,敬之工夫也;出门如见大宾,使民为承大祭,敬之气象也;修己以安百姓,笃恭而天下平,敬之效验也。聪明睿智,皆由此出。庄敬日强,安肆日偷。若人无众寡,事无大小,一一恭敬,不敢懈慢,则身体之强健,又何疑乎?
三曰求仁则人悦。凡人之生,皆得天地之理以成性,得天地之气以成形,我与民物,其大本乃同出一源。若但知私己而不知仁民爱物,是于大本一源之道已悖而失之矣。至于尊官厚禄,高居人上,则有拯民溺救民饥之责。读书学古,粗知大义,即有觉后知觉后觉之责。孔门教人,莫大于求仁,而其最初者,莫要于欲立立人、欲达达人数语。立人达人之人,人有不悦而归之者乎?
四曰习劳则神钦。人一日所着之衣所进之食,与日所行之事所用之力相称,则旁人韪之,鬼神许之,以为彼自食其力也。若农夫织妇终岁勤动,以成数石之粟数尺之布,而富贵之家终岁逸乐,不营一业,而食必珍馐,衣必锦绣,酣豢高眠,一呼百诺,此天下最不平之事,鬼神所不许也,其能久乎?古之圣君贤相,盖无时不以勤劳自励。为一身计,则必操习技艺,磨练筋骨,困知勉行,操心危虑,而后可以增智慧而长才识。为天下计,则必己饥己溺,一夫不荻,引为余辜。大禹、墨子皆极俭以奉身而极勤以救民。勤则寿,逸则夭;勤则有材而见用,逸则无劳而见弃;勤则博济斯民而神祗钦仰,逸则无补于人而神鬼不歆

[Effective C++] study

Distinguish between pointers and references: 引用不能为空而且指向不变,同时某些语法的需要会使用。
Prefer C++-style casts:使用四种cast来替代()可以增加类型安全性和可阅读性,一般为static_cast, 如果装换const用const_cast,向基类转化用dynmaic_cast,还有reinterpret_cast很少使用,强制转换.
Never treat arrays polymorphically:使用数组保存无法保证多态性
Avoid gratuitous default constructors:没有默认构造函数往往会带来问题,但无意义的默认构造函数也不好。
Understand how throwing an exception differs from passing a parameter or calling a virtual function:扔出异常总是要复制对象的,如果是传值则共拷贝两次;异常的隐式类型转换匹配比函数传参数要少;异常匹配是按照代码的先后顺序进行,不 同于虚函数的最佳匹配。
Catch exceptions by reference:使用传饮用来捕获异常,使用指针会带来不知道是否应该自己删除的问题,传值会带来多一次的拷贝代价以及可能异常类型的切割等问题。