C++报错尝试引用已删除的函数有图 有代码,为何,求速度,谢谢

C++语言 码拜 8年前 (2016-04-26) 2174次浏览
VS2015双击错误得到的提示位置在这
friend istream operator>>(istream &in, Student &s)
{
in >> s.m_ID >> s.m_Name >> s.m_Sex >> s.m_Tel >> s.m_English;
return in;
}
friend ostream operator<<(ostream &out, const Student &s)
{
out<< s.m_ID << s.m_Name << s.m_Sex << s.m_Tel << s.m_English;
return out;
}
C++报错尝试引用已删除的函数有图 有代码,为何,求速度,谢谢
全部代码(还未完成)在此,高手们顺便看看这个入门的单向链表的使用能否正确
#pragma once
#include<string>
#include<iostream>
using namespace std;
static int number = 0;
class Student
{
protected:
int m_ID;
string m_Name;
string m_Sex;
string m_Tel;
int m_English;
public:
Student(int ID = 0, string Name = “δ֪”, string Sex = “δ֪”, string Tel = “δ֪”, int English = 0)
{
m_ID = ID;
m_Name = Name;
m_Sex = Sex;
m_Tel = Tel;
m_English = English;
number++;
}
Student(const Student &s)
{
m_ID = s.m_ID;
m_Name = s.m_Name;
m_Sex = s.m_Sex;
m_Tel = s.m_Tel;
m_English = s.m_English;
number++;
}
~Student()
{
number–;
}
friend istream operator>>(istream &in, Student &s)
{
in >> s.m_ID >> s.m_Name >> s.m_Sex >> s.m_Tel >> s.m_English;
return in;
}
friend ostream operator<<(ostream &out, const Student &s)
{
out << s.m_ID << s.m_Name << s.m_Sex << s.m_Tel << s.m_English;
return out;
}
};#pragma once
#include”student.h”
class Graduate :public Student
{
protected:
string m_Majorfield;
string m_Papers;
public:
Graduate(int ID = 0, string Name = “δ֪”, string Sex = “δ֪”, string Tel = “δ֪”, int English = 0, string Majorfield=”δ֪”, string Papers=”δ֪”)
:Student(ID,Name,Sex,Tel,English)
{
m_Majorfield = Majorfield;
m_Papers = Papers;
number++;
}
Graduate(const Graduate&s)
{
m_ID = s.m_ID;
m_Name = s.m_Name;
m_Sex = s.m_Sex;
m_Tel = s.m_Tel;
m_English = s.m_English;
m_Majorfield = s.m_Majorfield;
m_Papers = s.m_Papers;
number++;
}
~Graduate()
{
number–;
}
/*friend istream operator>>(istream &in, Graduate &s)
{
in >> s.m_ID >> s.m_Name >> s.m_Sex >> s.m_Tel >> s.m_English >> s.m_Majorfield >> s.m_Papers;
return in;
}
friend ostream operator<<(ostream &out, Graduate &s)
{
out<< s.m_ID <<endl
<<s.m_Name <<endl
<<s.m_Sex <<endl
<<s.m_Tel <<endl
<<s.m_English <<endl
<<s.m_Majorfield <<endl
<<s.m_Papers<<endl;
return out;
}*/
};#pragma once
#include”student.h”
class Undergraduate :public Student
{
protected:
int m_Math;
int m_Cpp;
public:
Undergraduate(int ID = 0, string Name = “δ֪”, string Sex = “δ֪”, string Tel = “δ֪”, int English = 0, int Math = 0, int Cpp = 0)
:Student(ID, Name, Sex, Tel, English)
{
m_Math = Math;
m_Cpp = Cpp;
number++;
}
Undergraduate(const Undergraduate &s)
{
m_ID = s.m_ID;
m_Name = s.m_Name;
m_Sex = s.m_Sex;
m_Tel = s.m_Tel;
m_English = s.m_English;
m_Math = s.m_Math;
m_Cpp = s.m_Cpp;
number++;
}
~Undergraduate()
{
number–;
}
/*friend istream operator>>(istream &in, Undergraduate &s)
{
in>> s.m_ID >> s.m_Name >> s.m_Sex >> s.m_Tel >> s.m_English >> s.m_Math >> s.m_Cpp;
return in;
}
friend ostream operator<<(ostream &out, Undergraduate &s)
{
out<<s.m_ID <<endl
<<s.m_Name <<endl
<<s.m_Sex <<endl
<<s.m_Tel <<endl
<<s.m_English <<endl
<<s.m_Math <<endl
<<s.m_Cpp<<endl;
return out;
}*/
};
#pragma once
#include”student.h”
template<typename T>
class LinkList;
template<typename T>
class Node
{
private:
T *data;
Node *next;
public:
Node(T t)
{
data = &t;
next = NULL;
}
Node()
{
next =NULL
}
~Node()
{
next = NULL;
}
T SetData(T &t)
{
data = &t;
}
void ShowData()
{
cout << data<<endl;
}
friend LinkList;
};
template<typename T>
class LinkList
{
protected:
Node *m_head;
public:
LinkList()
{
this->m_head = NULL;
}
void InsertAtHead(const Node &t)
{
Node *p;
p = new Node(t);
p->next = m_head;
m_head = p;
}
void show()
{
Node *p;
p = m_head;
while (p != NULL)
{
p->ShowData();
p = p->next;
}
cout << endl;
}
};
#include”链表.h”
#include”graduate.h”
#include”undergraduate.h”
template<typename T>
void main()
{
LinkList<Student> list1;
list1.InsertAtHead(Student(5,”xiaosan”,”man”,”12132132132″,98));
list1.show();
}
解决方案

80

friend istream operator>>(istream &in, Student &s)改成friend istream& operator>>(istream &in, Student &s)返回引用试试

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C++报错尝试引用已删除的函数有图 有代码,为何,求速度,谢谢
喜欢 (0)
[1034331897@qq.com]
分享 (0)