Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα παιδιά, έχω το εξής πρόβλημα.  Καλώ μια συνάρτηση την insert και της κάνω cin ένα value, αλλά πάντα παίρνει null, έχω δοκιμάσει τα εξής:

- cin >> value;

-getline(cin,value);

-getline(cin >> ws, input);

 

Και όλα το ίδιο αποτέλεσμα! 

 

Παραθέτω τον κώδικα μου

bool duplicate(vector<string>);
void insert(void);

int main(){
	
	vector<string> names;
	vector<int> scores;
	string name;
	int score;	
	
	cout << "Type a Name and Score: ";
	while(cin>>name>>score){
		if(name=="no" && !score){
			break;
		}	
		names.push_back(name);
		scores.push_back(score);
		cout << "Type a Name and Score: ";
	}
	
	if(duplicate(names)){
		cout << "The names is duplicate!" << endl;
		return 1;
	}
	
	insert();
}



bool duplicate(vector<string> names){
	
	bool exist;
	
	sort(names.begin(),names.end());		
		
	for(int i=0;i<names.size();i++){
		for(int j=names.size()-1;j>i;j--){
			if(names[i]==names[j]){
				exist=true;
				break;
			}
		}
	}
	
	return exist;
}

void insert(void){
	
	string input;
	
	cout << "Type a Name or Score: ";
	cout << input << endl;
	getline(cin >> std::ws, input);
	
	if(input.empty()){
		cout << "Failed" << endl;
	}
	
 	cout << "You entered: " << input << endl << endl;
	
}

Λύθηκε1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...