- 博客(18)
- 收藏
- 关注
原创 C++ - map key值比较
#include #include #include #include using namespace std;class A{public: A() { cout public: // 用户只需要重载这个函数, 就可以进行map的操作。 bool operator {
2009-12-31 10:43:00 4836
原创 C++ - Using
1. full-qualified name std::cout 2. "using" keyword using std::cout;using std::endl; cout 3. "using namespace" keyword using namespace std; cout
2009-12-31 09:25:00 728
原创 C++ - 类型转换 static_cast, dynamic_cast, reinterpret_cast, const_cast
-- static_cast用于类层次结构中基类和子类之间转换。(基类和子类之间的转换通常建议用dynamic_cast) 进行上行转换(把子类的指针转换成基类)是安全的; 进行下行转换(把基类的指针转换成子类)时,由于没有动态类型检查,所以是不安全的。用于基本数据类型之间的转换,如把int转换成char,把int转换成enum。这种转换的安全性也要开发人员来保证。 -
2009-12-30 14:35:00 740
原创 C++ - 虚继承
class A ^ | (virtual) |class B p=24368,*p=21668p=2436c,*p=bp=24370,*p=21674p=24374,*p=ap=24378,*p=1 class A ^ | (virtual) |class B ^ | (v
2009-12-30 10:35:00 505
原创 C++ - 多继承
class B class C ^ ^ / / / / / / class D p=24500,*p=217f8p=24504,*p=bp=24508,*p=21804p=2450c,*p=cp=24510,*p=d
2009-12-30 10:24:00 627
原创 C++ - 单继承
class A ^ |class B p=41340,*p=21a48p=41344,*p=ap=41348,*p=1p=4134c,*p=bp=41350,*p=2 class A ^ |class B ^ |class C p=41340,*p=21a48p=4134
2009-12-30 10:14:00 677
原创 C++ - 拷贝构造函数和赋值操作符
注意, 如果不主动编写拷贝构造函数和赋值函数,编译器将以位拷贝的方式自动生成这两个缺省的函数。 -- 定义 class CC{public: CC(const CC& cc) { cout CC& operator= (const CC&) { cout public:...}; -- 什么时候使用拷贝构造函数, 什
2009-12-29 11:32:00 1001
原创 C++ - 类成员初始化顺序
-- 先基类, 再成员, 然后自己 class A {public: A() { cout };class B {public: B() { cout B(int i) { cout };class C {public: C() { cout };class CC: p
2009-12-29 10:58:00 3049
原创 C++ - nothrow
This constant value nothrow is used as an argument for operator new and operator new[] to indicate that these functions shall not throw an exception on failure, but return a null pointer instead
2009-12-29 09:45:00 1291
原创 ClearCase - How to pass 'alias' to sub-shell after setview command is executed.
1. Put your alias into your ~/.$(SHELL)rc file, for ksh example#~/>:cat .kshrcalias ll=ls -lalias scp=scp -F ~/.ssh/ssh_config#~/>:cat .kshrc For c shell, it should be .cshrcFor bash
2009-12-23 16:23:00 947
原创 C++ - Inheritance type: public, protected, private
-- Members. +------------+----------------+--------------+| type | superclass + subclass |+------------+----------------+--------------+| public | public | public
2009-12-21 10:22:00 647
原创 ACE - ACE_Thread, ACE_Thread_Manager
ACE_Thread只提供静态函数支持 class ACE_Export ACE_Thread { static int spawn static size_t spawn_n ...}; ACE_Thread_Manager, 提供了对ACE_Thread类的扩展功能, 可以创建出多个ACE_Thread_Manag
2009-12-16 16:17:00 1226 1
原创 ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition
// Donot know when and where to use ACE_Thread_Mutex, I always use ACE_Recursive_Thread_Mutex. 1. defineACE_Recursive_Thread_Mutex mMutex;ACE_Condition * mCondition; mCondition = new AC
2009-12-16 11:14:00 1795
原创 ACE - ACE_Event_Handler ACE_Reactor
ACE_Reactor是反应堆的概念- ACE_Reactor * ACE_Reactor::instance (void); 将返回缺省的反应堆。- ACE_Reactor * ACE_Reactor::instance (ACE_Reactor *, int delete_reactor = 0); 设置新的缺省反应堆, 并把旧的返回 下面的代码例子是重定义缺省的反应堆AC
2009-12-16 09:24:00 2438 1
原创 ACE - ACE_INET_Addr, ACE_SOCK_Acceptor, ACE_SOCK_Connector, ACE_SOCK_Stream
ACE_SOCK_Acceptor 服务器端socketACE_SOCK_Connector 客户机端socketACE_SOCK_Stream 用来连接服务器端和客户机端, 在这儿有send和recv的接口. /#:> cat server.C#include "SOCK_Acceptor.h"#include #include #in
2009-12-15 11:44:00 2057
原创 A simple client/server communication program
---------------- client.c ----------------------------------------#>:cat client.c#include #include #include #include #include #include #include #include #include #include #de
2009-12-15 10:13:00 786
原创 non-virtual and virtual functions
/:#> cat t.C#include #include #include #include class A {public: A():a(1) {}public: int a;};class B : public A {public: B():b(2) {} virtual ~B() {} publi
2009-12-10 16:21:00 783
原创 C语言中的位域
规则:1. 位域不能跨字节,所以位域的长度不能超过8bits2. 所以当一个字节所剩空间不够存放另一位域时,就要从下一字节起存放新的位域3. 可以有意使某位域从下一字节开始,这就需要用到无名位域,这种无名位域只用来作填充或调整位置。 struct ss { int a1:1; /*第一个字节*/ int :2;
2009-12-08 12:27:00 682
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人