没报错但是运行结果不对
void Book::setAuthor()
{
char *n;
cout<<"输入作者"<<endl;
cin>>n;
person=new char[strlen(n)+1];
strcpy(author,n);
}
int main()
{
Book b;
b.setName();
b.setAuthor();
没报错,结果输完book名字之后就结束了
把基类里面的setname改成虚函数
正常运行就可以
char *n 没有定义指向的变量,是个野指针,不合法
n都没有分配空间怎么能直接输入呢
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!