Chinaunix首页 | 论坛 | 博客
  • 博客访问: 323961
  • 博文数量: 106
  • 博客积分: 3081
  • 博客等级: 中校
  • 技术积分: 1090
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-15 14:07
文章分类

全部博文(106)

文章存档

2009年(1)

2007年(34)

2006年(71)

我的朋友

分类: C/C++

2007-07-18 23:49:21

 
 
 
 
 
 
          
 
/////////////////////////////////////////////////////////////////////////////////////
 
 
多种处理字符串涵数:
 
 
=========================================
异质
class Vehicle
{
public:
    virtual void run() const = 0;
};
// 派生于Vehicle的具体类Car
class Car: public Vehicle
{
public:
    virtual void run() const
    {
        std::cout << "run a car\n";
    }
};
// 派生于Vehicle的具体类Airplane
class Airplane: public Vehicle
{
public:
    virtual void run() const
    {
        std::cout << "run a airplane\n";
    }
};
void run_vehicles(const std::vector& vehicles)
{
    for (unsigned int i = 0; i < vehicles.size(); ++i)
    {
        vehicles[i]->run();     // 根据具体vehicle的类型调用对应的run()
    }
}
int main()
{
    Car car;
    Airplane airplane;
    std::vector v;    // 异质vehicles集合
    v.push_back(&car);
    v.push_back(&airplane);
    run_vehicles(v);            // run不同类型的vehicles
}
 
阅读(1075) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~