2010年7月14日
摘要: 1. 为什么用volatile? C/C++ 中的 volatile 关键字和 const 对应,用来修饰变量,通常用于建立语言级别的 memory barrier。这是 BS 在 "The C++ Programming Language" 对 volatile 修饰词的说明:A volatile specifier is a hint to a compiler that an object ... 阅读全文
posted @ 2010-07-14 17:41 chao_yu 阅读(90840) 评论(16) 推荐(44) 编辑
摘要: 为什么使用const?采用符号常量写出的代码更容易维护;指针常常是边读边移动,而不是边写边移动;许多函数参数是只读不写的。const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替),分类如下: 常变量: const 类型说明符 变量名 常引用: const 类型说明符 &引用名 常对象: 类名 const对象名 常成员函数: 类名::fun(形参) const 常数组... 阅读全文
posted @ 2010-07-14 17:29 chao_yu 阅读(47597) 评论(17) 推荐(36) 编辑
摘要: 一、STL即 Standard Template Library (标准模板库) STL是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。STL的代码从广义上讲分为三类:algorithm(算法)、conta... 阅读全文
posted @ 2010-07-14 11:59 chao_yu 阅读(6982) 评论(0) 推荐(0) 编辑
摘要: 1. “svn: 此客户端对于工作副本 “.” 太旧。你需要取得更新的 Subversion 客户端,或者降级?” zandy@ubuntu:/tetx/trunk$ svn updatesvn: 此客户端对于工作副本 “.” 太旧。你需要取得更新的 Subversion 客户端,或者降级工作副本。参见 http://subv... 阅读全文
posted @ 2010-07-14 10:26 chao_yu 阅读(1326) 评论(0) 推荐(0) 编辑
2010年7月13日
摘要: 一、const char* 和char* 之间的转换 const char*是指向常量的指针,而不是指针本身为常量,可以不被初始化.该指针可以指向常量也可以指向变量,只是从该指针的角度而言,它所指向的是常量,通过该指针不能修改它所指向的数据.1.const char*是不能直接赋值到char*的,这样编译都不能通过,理由:假如可以的话,那么通过char*就可以修改const char指向的内容了,... 阅读全文
posted @ 2010-07-13 16:58 chao_yu 阅读(4502) 评论(0) 推荐(2) 编辑
摘要: 一、搭建 Subversion 服务器1、首先需要安装 subversion 这个软件:sudo apt-get install subversion注:使用apt-get安装软件,ubuntu默认将软件下载到 /etc/bash_completion.d/ 目录下,可使用 sudoapt-get source packagename 下载源码包,也是下载到 /etc/bash_completio... 阅读全文
posted @ 2010-07-13 09:31 chao_yu 阅读(912) 评论(0) 推荐(0) 编辑
2010年7月12日
摘要: C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 虚函数表 对C+... 阅读全文
posted @ 2010-07-12 11:19 chao_yu 阅读(1015) 评论(2) 推荐(0) 编辑
摘要: 指针是 C 与其他语言区别的重要特征之一,在 C++ 中,指针也被广泛运用,我们通过指针实现多态。然而,众所周知,指针的使用必须小心,否则很容易造成内存泄漏 Memory Leak。当我们有几个指针指向同一个对象时有其应该注意,关于何时释放这个对象:(1) 如果释放的太早,那么其它的指针仍然指向这片内存,如果再使用它会造成未定义行为。(2) 如果一直不释放可能会丢失最后一个指向这个对象的指针 导致... 阅读全文
posted @ 2010-07-12 11:08 chao_yu 阅读(4936) 评论(0) 推荐(1) 编辑
2010年7月7日
摘要: 自从1993年Bjarne Stroustrup 〔注1 〕提出有关C++ 的RTTI功能之建议﹐以及C++的异常处理(exception handling)需要RTTI;最近新推出的C++ 或多或少已提供RTTI。 然而,若不小心使用RTTI,可能会导致软件弹性的降低。本文将介绍RTTI的观念和近况﹐并说明如何善用它。什么是RTTI﹖ 在C++ 环境中﹐头文件(header file) 含有类之... 阅读全文
posted @ 2010-07-07 18:10 chao_yu 阅读(2159) 评论(1) 推荐(1) 编辑
2010年7月5日
摘要: 1. TCPDump介绍 TcpDump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。tcpdump就是一种免费的网络分析工具,尤其其提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。tcpdump存在于基本的FreeB... 阅读全文
posted @ 2010-07-05 17:43 chao_yu 阅读(116396) 评论(4) 推荐(9) 编辑