设计模式学习笔记:理解与 C++ 示例
设计模式学习笔记:理解与 C++ 示例一组经过验证的“组织代码的经验”:当对象之间的关系开始变复杂时,设计模式帮助我们降低耦合、隔离变化、复用行为。 一、创建型模式创建型模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活…
设计模式学习笔记:理解与 C++ 示例一组经过验证的“组织代码的经验”:当对象之间的关系开始变复杂时,设计模式帮助我们降低耦合、隔离变化、复用行为。 一、创建型模式创建型模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活…
1.头文件创建一个函数但源文件未实现该函数,会出现bug吗? 函数未被使用:编译和链接时都不报错 函数被使用:编译不报错,链接时报错(特殊情况:函数为内联函数时,编译和链接都报错) 若为模板函数(需要在头文件中声明和定义),需要在编译期进行模板实例化,会在编译期报错 2.头文件循环包含问题 当类/…
C++指针1.悬空指针 定义:指针被释放后,还指向原来的内存空间。如: 1234void *p = malloc(size);assert(p);free(p);//此时p为悬空指针 避免方法: 1234void *p = malloc(size);assert(p);free(p);p = NULL;//赋值为NU…