所以我有这个代码:
using namespace std;
#include <list>
#include <iostream>
#include <string>
#include "JugadorEscacs.h"
void inserirOrdenat(list<JugadorEscacs> &l, JugadorEscacs jug) {
bool inserit=false;
list<JugadorEscacs>::iterator itt=l.begin();
while(itt!=l.end() && !inserit) {
if(itt->getElo()>jug.getElo()) itt++;
else {
l.insert(itt,jug);
inserit=true;
}
}
if(itt==l.end()) l.push_back(jug);
}
int main () {
list<JugadorEscacs> l;
string nom, cognom, pais;
int elo;
getline(cin, nom);
while(nom!="FI") {
getline(cin, cognom);
getline(cin, pais);
cin >> elo;
cin.ignore();
JugadorEscacs jug(nom, cognom, pais, elo);
if(l.empty()) l.push_front(jug);
else inserirOrdenat(l, jug);
getline(cin, nom);
}
list<JugadorEscacs>::iterator it=l.begin();
while(it!=l.end()) {
cout << it->getNom() << endl;
cout << it->getCognoms() << endl;
cout << it->getPais() << endl;
cout << it->getElo() << endl;
it++;
}
return 0;
}
.cpp 和 .h 是正确的。当我使用代码块在我的 PC 上运行它时,它运行良好,但是当我使用 PuTTy 运行它以连接到 linux 服务器时,什么也没有发生。我使用它编译它g++ main.cpp JugadorEscacs.cpp -o main
并使用 .txt 输入所有内容。.txt 与主目录位于同一目录中,但是当我运行它时./main <test1.txt
没有任何反应,它返回到命令提示符。我不知道如何以更好的方式解释它,有人可以帮我解决这个问题吗?谢谢