//
// main.cpp
// template_pattern
//
// Created by apple on 2019/3/12.
// Copyright © 2019年 apple. All rights reserved.
//
#include <iostream>
using namespace std;
class BaseDesigner
{
public:
virtual void getA() = 0;
virtual void getB() = 0;
virtual void getC() = 0;
void template_method() {getA(); getB(); getC();}
};
class Designer_A:public BaseDesigner
{
public:
void getA(){}
void getB(){cout<<"getB 已实现"<<endl;}
void getC(){cout<<"getC 已实现"<<endl;}
};
int main(int argc, const char * argv[]) {
BaseDesigner *designer;
Designer_A designer_a;
designer = &designer_a;
designer->template_method();
return 0;
}
getB 已实现
getC 已实现
Program ended with exit code: 0