博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gac代码库分析(1)
阅读量:5809 次
发布时间:2019-06-18

本文共 1267 字,大约阅读时间需要 4 分钟。

 

基础类:Basic.h

重在学习思想,难得的开源库

简单介绍,猜测意图

一.基本类型

1.NotCopyable

意图:阻止继承子类被拷贝

.h

class NotCopyable{private:    NotCopyable(const NotCopyable&);    NotCopyable& operator=(const NotCopyable&);public:    NotCopyable();};

.cpp

NotCopyable::NotCopyable(){}NotCopyable::NotCopyable(const NotCopyable&){}NotCopyable& NotCopyable::operator=(const NotCopyable&){    return *this;}

2.Error

意图:用于抛错

class Error{private:    wchar_t*            description;public:    Error(wchar_t* _description);    wchar_t*            Description()const;};

3.Object

意图:学习.net和java等语言,提供一个空的基类

class Object{public:    virtual ~Object();};

4.ObjectBox

意图:提供一份对象的拷贝

template
class ObjectBox : public Object{private: T object;public: ObjectBox(const T& _object) { object=_object; } const T& Unbox() { return object; }};

5.BinaryRetriver

意图:提供一个联合体,minSize为默认最小大小,t一般不会超过其大小

template
union BinaryRetriver{ T t; char binary[sizeof(T)>minSize?sizeof(T):minSize];};

demo示例:

const int BinarySize = sizeof(void*)*8;BinaryRetriver
retriver;memset(retriver.binary, 0, BinarySize);

6.KeyType

7.POD

8.DateTime

意图:提供时间类的封装

9.Interface

class Interface : private NotCopyable{public:    virtual ~Interface();};

意图:提供接口基类

转载地址:http://kjjbx.baihongyu.com/

你可能感兴趣的文章
ES6的 Iterator 遍历器
查看>>
2019届高二(下)半期考试题(文科)
查看>>
nginx 301跳转到带www域名方法rewrite(转)
查看>>
AIX 配置vncserver
查看>>
windows下Python 3.x图形图像处理库PIL的安装
查看>>
【IL】IL生成exe的方法
查看>>
network
查看>>
SettingsNotePad++
查看>>
centos7安装cacti-1.0
查看>>
3个概念,入门 Vue 组件开发
查看>>
没有JS的前端:体积更小、速度更快!
查看>>
数据指标/表现度量系统(Performance Measurement System)综述
查看>>
GitHub宣布推出Electron 1.0和Devtron,并将提供无限制的私有代码库
查看>>
Angular2, NativeScript 和 React Native比较[翻译]
查看>>
论模式在领域驱动设计中的重要性
查看>>
国内首例:飞步无人卡车携手中国邮政、德邦投入日常运营
查看>>
微软将停止对 IE 8、9和10的支持
查看>>
微服务架构会和分布式单体架构高度重合吗
查看>>
如何测试ASP.NET Core Web API
查看>>
《The Age of Surge》作者访谈
查看>>