
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
如果使用malloc,那么就单纯的开辟一片空间,强行解释说这是一个对象。对于非对象的内容来说,两个或许并没事什么区别,但是对于对象而言,区别就大了。1.调试模式下的未初始化内存:许多编译器(如 MSVC)会用 0xCC 填充未初始化内存,帮助检测未初始化变量。2.内存损坏标记:某些环境用特定模式(如 0xDEADBEEF)标记释放的内存。由于malloc没有调用构造函数,所以值为-84215045
这里 class 关键字表明T是一个类型,后来为了避免 class 在这两个地方的使用可能给人带来混淆,所以引入了 typename 这个关键字。在 C++ Template 中很多地方都用到了 typename 与 class 这两个关键字,而且好像可以替换,是不是这两个关键字完全一样呢?关键字(除非是基类列表或成员初始化列表)。当在模板中引用一个依赖于模板参数的类型时,必须使用。是一个静态成员
在 C 和 C++ 中,# 和 ## 是预处理运算符(也称 “宏运算符”),仅在预处理阶段起作用,用于对宏参数进行字符串化、拼接等操作。
Type&引用可以理解为 “给已存在的变量起别名”,通过引用可以直接操作原变量。C++ 中引用主要分为左值引用和右值引用。

本例所示,定义构造函数时并没有在函数体中对成员变量一一赋值,其函数体为空(当然也可以有其他语句),而是在函数首部与函数体之间添加了一个冒号。构造函数初始化列表还有一个很重要的作用,那就是初始化 const 成员变量。不写构造函数,存在一个默认的构造函数,默认的构造函数是无参的,所以可以构造无参对象。构造函数是用来构造对象的,构造对象时候必定调用构造函数。构造函数觉得了对象的长相(构造函数无参,对象
有些情况下,我们对于一个类,并不希望他在程序里出现太多的实例,我们只希望这个类是只有一个实例。举个简单的例子,比方说电脑的回收站,他不能像文件夹一样打开多个,他只能存在一个。这种具有唯一性的,就是单例要想做到的。它类似于全局变量,却又不是全局变量。
原型模式的目的就像如果你有一个对象,你现在希望生成一个与之一模一样的复制品,该如何实现呢?流程一般是:新建一个属于相同类的对象,然后遍历原始对象的所有成员变量,并将成员变量复制到新对象里。但是这种情况有些问题.想。
是一种创建型设计模式, 其在父类中提供一个创建对象的方法, 允许子类决定实例化对象的类型。

生成器模式(Builder Pattern)是一种创建型设计模式,它专注于,使得同样的构建过程可以创建不同的表示。就像是做饭,你可以自己慢慢做,各个步骤自己选择。而使用生成器就像是预制菜,所有的最后菜的样子,已经规划好了。你只能从中选择一个。

抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供一个接口,用于创建一系列相关或相互依赖的对象,而无需指定它们具体的类。简单说,它就像一个 "超级工厂",可以生产一整套配套的产品,而不是单一产品。比如说GUI,在windows平台使用windows风格,mac使用mac风格。








