总类调用各个类

#include<iostream>
using namespace std;
class car
{
public:
    virtual char* getinfo() = 0;
};
class bmw :public car
{
public:
    char* getinfo()
    {
        return "bwm";
    }
};
class benz :public car
{
public:
    char* getinfo()
    {
        return "benz";
    }
};

class carfactory
{
public:
    static car* getcar(char* name)
    {
        if (name == "bwm")
            return new bmw();
        if (name == "benz")
            return new benz();
        else
            NULL;
    }
};
int main()
{
    cout << "购买的东西" << endl;
    car* bmw = carfactory::getcar("bwm");
    cout << "提取骑车" << bmw->getinfo() << endl;
    car* benz = carfactory::getcar("benz");
    cout << "提取骑车" << benz->getinfo() << endl;
    system("pause");
    return 0;

}

你可能感兴趣的:(总类调用各个类)