回 帖 发 新 帖 刷新版面

主题:[讨论]编程遇到的简单问题

下面是我写的一个简单的程序 目的输出导师的姓名和他所带的学生的姓名和班级和研究方向
#include<iostream.h>
#include<string.h>
class student*/定义学生类/*
{ char name[20];*/学生的姓名/*
  char cname[20];*/学生的班级/*
  char search[20];*/学生的研究方向/*
public:
    student(char n[],char c[],char s[]){ strcpy(name,n);strcpy(cname,c);strcpy(search,s); }*/构造函数/*
    char *get_name(){return name;}
    char *get_cname(){return cname;}
    char *get_search(){return search;}
};
class teacher*/定义老师类/*
{ char name[10];*/老师的姓名/*
  int top;
  student stu[10];
public:
    teacher(char t[]){top=0;strcpy(name,t);}
    char *get_name(){ return name; }
    add(student &ss)*/将该老师带的学生送到stu[10]数组里/*
    { stu[top]=ss;top++;
    }
    void disp()*/实现老师名字的输出和他学生名字和班级研究方向的输出/*
    { cout<<name<<endl;
      for(int i=0;i<top;i++)
           cout<<stu[i].get_name()<<stu[i].get_cname()<<st[i].get_search()<<endl;
    }
};
void main()
{ student s1("李明","金融班","投资学");
  student s2("王华","金融班","国际金融");
  student s3("张伟","金融班","投资学");
  teacher t1("朱花");
  teacher t2("王刚");
  t1.add(s1);
  t1.add(s2);
  t2.add(s3);
  t1.disp();
  t2.disp();
}
这个程序编译的时候出现 ||error C2512: 'student' : no appropriate default constructor available执行 cl.exe 时出错.||这个问题 我不懂 麻烦哪为老师或同学帮忙告诉是什么问题如何改 万分感谢!!!!

回复列表 (共3个回复)

沙发

很简单:你在teacher类里面用到了student stu[10];

  它会调用无参构造函数,但是你只写了一个有参构造函数,它当然会说构造函数不可用。

板凳

哦 原来这样 我知道了 谢谢!!能不能把你的qq号给我啊 我想以后有不懂的可以问你 身边实在是没人指导 很无奈。。。。

3 楼

我发到你的邮箱了。

我来回复

您尚未登录,请登录后再回复。点此登录或注册