#include <iostream>
#include <vector>
#include <string>
#include<algorithm>
using namespace std;
class person {
protected:
string name;
public:
int ID;
person(string name, int ID) :name(name), ID(ID) {};
int showID() {
cout<<name<<", "<<"ID="<<ID<<", ";
return 0;
};
virtual int showS() = 0;
};
class student :public person {
private:
int score;
public:
student(string name, int ID, int score) :person(name, ID), score(score) {};
int showS() {
cout <<"成績:"<<score;
return 0;
};
};
class teacher :public person {
private:
int salary;
public:
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
int showS() {
cout << "薪水:" << salary;
return 0;
};
};
struct cmp
{
inline bool operator() (const person& a, const person& b)
{
return (a.ID < b.ID);
}
};
void main()
{
person* p;
student s2("Candy", 333, 90);
student s1("John", 111, 80);
teacher t("Mary", 222, 1000);
vector<person*> aa;
p = &s2;
aa.push_back(p);
p = &s1;
aa.push_back(p);
p = &t;
aa.push_back(p);
sort(aa.begin(), aa.end(), cmp());
vector< person*>::iterator it;
for (it = aa.begin();
it != aa.end(); ++it) {
(*it)->showID();
(*it)->showS();
cout << endl;
}
system("pause");
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZTxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpjbGFzcyBwZXJzb24gewpwcm90ZWN0ZWQ6CglzdHJpbmcgbmFtZTsKCQpwdWJsaWM6CgkKCWludCBJRDsKCXBlcnNvbihzdHJpbmcgbmFtZSwgaW50IElEKSA6bmFtZShuYW1lKSwgSUQoSUQpIHt9OwoJCglpbnQgc2hvd0lEKCkgewoJCWNvdXQ8PG5hbWU8PCIsICI8PCJJRD0iPDxJRDw8IiwgIjsKCQlyZXR1cm4gMDsKCQl9OwoJdmlydHVhbCBpbnQgc2hvd1MoKSA9IDA7Cn07CgpjbGFzcyBzdHVkZW50IDpwdWJsaWMgcGVyc29uIHsKcHJpdmF0ZToKCWludCBzY29yZTsKcHVibGljOgoJCglzdHVkZW50KHN0cmluZyBuYW1lLCBpbnQgSUQsIGludCBzY29yZSkgOnBlcnNvbihuYW1lLCBJRCksIHNjb3JlKHNjb3JlKSB7fTsKCWludCBzaG93UygpIHsKCQljb3V0IDw8IuaIkOe4vjoiPDxzY29yZTsKCQlyZXR1cm4gMDsKCX07Cn07CgoKY2xhc3MgdGVhY2hlciA6cHVibGljIHBlcnNvbiB7CnByaXZhdGU6CglpbnQgc2FsYXJ5OwpwdWJsaWM6CgkKCXRlYWNoZXIoc3RyaW5nIG5hbWUsIGludCBJRCwgaW50IHNhbGFyeSkgOnBlcnNvbihuYW1lLCBJRCksIHNhbGFyeShzYWxhcnkpIHt9OwoJaW50IHNob3dTKCkgewoJCWNvdXQgPDwgIuiWquawtDoiIDw8IHNhbGFyeTsKCQlyZXR1cm4gMDsKCX07Cn07CnN0cnVjdCBjbXAKewoJaW5saW5lIGJvb2wgb3BlcmF0b3IoKSAoY29uc3QgcGVyc29uJiBhLCBjb25zdCBwZXJzb24mIGIpCgl7CgkJcmV0dXJuIChhLklEIDwgYi5JRCk7Cgl9Cn07CgoKdm9pZCBtYWluKCkKewoJcGVyc29uKiBwOwoJc3R1ZGVudCBzMigiQ2FuZHkiLCAzMzMsIDkwKTsKCXN0dWRlbnQgczEoIkpvaG4iLCAxMTEsIDgwKTsKCXRlYWNoZXIgdCgiTWFyeSIsIDIyMiwgMTAwMCk7CgkKCXZlY3RvcjxwZXJzb24qPiBhYTsKCXAgPSAmczI7CglhYS5wdXNoX2JhY2socCk7CglwID0gJnMxOwoJYWEucHVzaF9iYWNrKHApOwoJcCA9ICZ0OwoJYWEucHVzaF9iYWNrKHApOwoJCglzb3J0KGFhLmJlZ2luKCksIGFhLmVuZCgpLCBjbXAoKSk7Cgl2ZWN0b3I8IHBlcnNvbio+OjppdGVyYXRvciBpdDsKCQoJZm9yIChpdCA9IGFhLmJlZ2luKCk7CgkJaXQgIT0gYWEuZW5kKCk7ICsraXQpIHsKCQkKCQkoKml0KS0+c2hvd0lEKCk7CgkJKCppdCktPnNob3dTKCk7CgkJY291dCA8PCBlbmRsOwoJfQoJCglzeXN0ZW0oInBhdXNlIik7Cn0=
Main.java:1: error: illegal character: '#'
#include <iostream>
^
Main.java:1: error: class, interface, or enum expected
#include <iostream>
^
Main.java:2: error: illegal character: '#'
#include <vector>
^
Main.java:3: error: illegal character: '#'
#include <string>
^
Main.java:4: error: illegal character: '#'
#include<algorithm>
^
Main.java:8: error: illegal start of type
protected:
^
Main.java:8: error: ';' expected
protected:
^
Main.java:9: error: <identifier> expected
string name;
^
Main.java:11: error: illegal start of type
public:
^
Main.java:11: error: ';' expected
public:
^
Main.java:13: error: <identifier> expected
int ID;
^
Main.java:14: error: ';' expected
person(string name, int ID) :name(name), ID(ID) {};
^
Main.java:17: error: not a statement
cout<<name<<", "<<"ID="<<ID<<", ";
^
Main.java:20: error: <identifier> expected
virtual int showS() = 0;
^
Main.java:20: error: invalid method declaration; return type required
virtual int showS() = 0;
^
Main.java:20: error: ';' expected
virtual int showS() = 0;
^
Main.java:23: error: '{' expected
class student :public person {
^
Main.java:23: error: <identifier> expected
class student :public person {
^
Main.java:24: error: illegal start of type
private:
^
Main.java:24: error: ';' expected
private:
^
Main.java:25: error: <identifier> expected
int score;
^
Main.java:26: error: illegal start of type
public:
^
Main.java:26: error: ';' expected
public:
^
Main.java:28: error: illegal start of type
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: ';' expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: illegal start of type
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: <identifier> expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:28: error: ';' expected
student(string name, int ID, int score) :person(name, ID), score(score) {};
^
Main.java:30: error: not a statement
cout <<"??:"<<score;
^
Main.java:36: error: '{' expected
class teacher :public person {
^
Main.java:36: error: <identifier> expected
class teacher :public person {
^
Main.java:37: error: illegal start of type
private:
^
Main.java:37: error: ';' expected
private:
^
Main.java:38: error: <identifier> expected
int salary;
^
Main.java:39: error: illegal start of type
public:
^
Main.java:39: error: ';' expected
public:
^
Main.java:41: error: illegal start of type
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: ';' expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: illegal start of type
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: <identifier> expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:41: error: ';' expected
teacher(string name, int ID, int salary) :person(name, ID), salary(salary) {};
^
Main.java:43: error: not a statement
cout << "??:" << salary;
^
Main.java:47: error: class, interface, or enum expected
struct cmp
^
Main.java:52: error: class, interface, or enum expected
}
^
Main.java:56: error: class, interface, or enum expected
void main()
^
Main.java:59: error: class, interface, or enum expected
student s2("Candy", 333, 90);
^
Main.java:60: error: class, interface, or enum expected
student s1("John", 111, 80);
^
Main.java:61: error: class, interface, or enum expected
teacher t("Mary", 222, 1000);
^
Main.java:63: error: class, interface, or enum expected
vector<person*> aa;
^
Main.java:64: error: class, interface, or enum expected
p = &s2;
^
Main.java:65: error: class, interface, or enum expected
aa.push_back(p);
^
Main.java:66: error: class, interface, or enum expected
p = &s1;
^
Main.java:67: error: class, interface, or enum expected
aa.push_back(p);
^
Main.java:68: error: class, interface, or enum expected
p = &t;
^
Main.java:69: error: class, interface, or enum expected
aa.push_back(p);
^
Main.java:71: error: class, interface, or enum expected
sort(aa.begin(), aa.end(), cmp());
^
Main.java:72: error: class, interface, or enum expected
vector< person*>::iterator it;
^
Main.java:74: error: class, interface, or enum expected
for (it = aa.begin();
^
Main.java:75: error: class, interface, or enum expected
it != aa.end(); ++it) {
^
Main.java:75: error: class, interface, or enum expected
it != aa.end(); ++it) {
^
Main.java:78: error: class, interface, or enum expected
(*it)->showS();
^
Main.java:79: error: class, interface, or enum expected
cout << endl;
^
Main.java:80: error: class, interface, or enum expected
}
^
Main.java:83: error: class, interface, or enum expected
}
^
76 errors