程序开发过程中的惯用编程手法(持续更新)

C语言

C++语言

模板

c++中模板属于泛型编程,泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。像c++标准stl库就大量的使用了模板,模板可以屏蔽类型的差异,使代码具有更高的通用行,从而减少代码的重复率。

函数模板
template <typename type, ...>
返回值类型 函数名称(参数列表类型)
{
}
example:
template <typename T>
T const& Max (T const& a, T const& b)
{
	return a > b ? a:b;
}
类模板
template <class type, ...>
class 类名
{
};
example:
template<class T>
class TSingleton
{
public:
	static T* Instance();
private:
	static T* mpoInstance;
private:
	TSingleton();
	~TSingleton();
};
模板也可以有继承
template <class type, ...>
class 类名 : public 类模板名<type...>
{
};
类的定义

定义类的时候为了结构更加紧凑,通常类中也定义类型:
还可以加入命名空间

#define STATE_NAMESPACE_START namespace state {

#define STATE_NAMESPACE_END }

STATE_NAMESPACE_START
class CState
{
    enum ERunType
	{
	
	};
	typedef std::list<int*> DescIterType;
    class CDesc
	{
	
	};

};
STATE_NAMESPACE_END
利用虚函数

类只关联依赖抽象类,而不是具体的实现。利用设计模式达到代码复用可扩展。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值