请教怎样可以实现不同长度的多维数组,例如:
有三个公司,名称分别为A、B、C;A公司有30个员工,B公司有80个员工,C公司有20个员工;A公司中员工A1有20个客户、A2有60个客户……
现在我想用一个数组或什么变量包含所有公司的所有员工信息、员工客户信息等主,并能方便的检索各种信息,最好象多维数组那样可按数组下标取值。
求解,谢谢!!!

解决方案 »

  1.   

    char * buf[ 1000 ];
    for( i = 0; i < 1000; i++ )
    {
           buf[ i ] = new char[ xxxxxxxx ];
    }
      

  2.   

    这东西用链表比较好实现,用数组不方便,你不能保证公司的员工数就一成不变.
    定义一个类的链表来管理
    比如:
    // 客户类
    class CGuest
    {
    };
    Clist <CGuest*,CGuest*> CGuestList;
    // 员工类
    class CEmployee
    {
    public:
       CGuestList m_GuestList;
    };
    Clist <CEmployee*,CEmployee*> CEmployeeList;
    //  公司类
    class Company // 
    {
     public:
       CEmployeeList m_EmployeeList;
    };
    Clist <CCompany*,Company*> CCompanyList;
    应用:
    class CTest
    {
    public:
    // 公司链表,通过该链表就可以访问所有的对象
      CCompanyList m_CompanyList;
    }
      

  3.   

    一个员工的信息做成一个结构体,包含各个个人的信息,然后用vector来存放,这是动态数组,可以动态扩展,而已可以通过数组索引来访问..vector也可以嵌套多层
      

  4.   


    vector没有用过,能举个例子吗,谢谢!