基于策略的设计:从基础到高级应用
1. 基于策略设计概述
在基于策略的设计中,我们可以通过策略来控制类的行为。例如,有如下的构造和销毁函数模板:
template <typename P, typename T>
static void construct(const P* ptr, const T* p) {}
template <typename P, typename T>
static void destroy(const P* ptr, const T* p,
bool must_delete) {}
// ... other events ...
调试策略各有不同,基础的调试策略只是记录所有可调试的事件,示例如下:
// Example 16
struct Debug {
template <typename P, typename T>
static void construct(const P* ptr, const T* p) {
std::cout << "Constructed SmartPtr at " << ptr <<
", object " << static_cast<const void*>(p) <<
std::endl;
}
tem
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



