String no print c++ -
i'm new in programming, have big code, when try print data never prints string variable, can help? use "goto" practicall reassons.
#include <iostream> #include <string> #include <cstdlib> using namespace std; class producto { public: int id; string nombre; string descripcion; int precio; void registrar(); void ver(); }; void producto::registrar() { cout << "codigo:" << endl; cin >> id; cin.ignore(); cout << "nombre del producto:" << endl; getline(cin, nombre); cout << "descripcion del producto:" << endl; getline(cin, descripcion); cout << "precio:" << endl; cin >> precio; } void producto::ver() { cout << "id del producto:"; cout << id << endl; cout << "nombre del producto:" << endl; cout << nombre; cout << "descripcion del producto:"; cout << descripcion<<endl; cout << "precio:"; cout << "$" << precio << endl; } int main() { menu1: int menu; producto cosa; cout << "************************" << endl; cout << "1.- registrar producto" << endl; cout << "2.- ver producto" << endl; cout << "************************" << endl; cin >> menu; cin.ignore(); switch (menu) { case 1: cout << "ingrese producto nuevo:\npresione enter para continuar" << endl; cin.ignore(); system("cls"); cosa.registrar(); cin.ignore(); break; case 2: cosa.ver(); cout << "presione enter para regresar al menu principal." << endl; cin.ignore(); break; } goto menu1; return 0; }
edit here int main
the use of goto
not recommended , considered bad practice beginner. if begining in c++, following best practice best way begin. goto
supported in c/c++ backward compatibility.
for issue try use loop instead of goto
.
int main() { //condition show menu or exit bool bcontinue = true; producto cosa; do{ int menu; cout << "************************" << endl; cout << "1.- registrar producto" << endl; cout << "2.- ver producto" << endl; cout << "3.- exit" << endl; cout << "************************" << endl; cin >> menu; cin.ignore(); switch (menu) { case 1: cout << "ingrese producto nuevo:\npresione enter para continuar" << endl; cin.ignore(); system("cls"); cosa.registrar(); cin.ignore(); break; case 2: cosa.ver(); cout << "presione enter para regresar al menu principal." << endl; cin.ignore(); break; case 3: bcontinue = false; break; } }while(bcontinue) return 0; }
like way, issue fixed , learn better way it.
Comments
Post a Comment