概要描述
动态资源分配内存计算方法
Complex *pc = new complex; //动态分配
1)两个double变量,共计8个字节;
2)同时分配32字节+4字节(DebugHeader);
3)两个cookie,共计8个字节;记录分配内存的大小,用于资源回收。
a)16进制最后4个bit都是0??
补充知识
Static变量
Static静态变量实际与对象分离,不再像普通变量一样与用户紧密绑定,创建的对象都可通过对象的this指针指向该变量。
Class Account
{
Public:
StaticDouble m_rate;
Staticvoid set_rate(const double& x){m_rate = x};
}
Double Account::m_rate = 0.6; //在class外要执行定义,并且赋值
静态函数
Static函数则没有this指针。只能处理静态成员变量。
调用方式:
通过object调用:Accout
MyAccount;MyAccount.set_rate(0.6);
通过类名调用:Account::set_rate();
Sigleton的模式、用法及优化
类模板
函数模板
命名空间(namespace)
使用方式:
1)Directive
2)Using declaration