本文整理汇总了C++中Nodo::getInfo方法的典型用法代码示例。如果您正苦于以下问题:C++ Nodo::getInfo方法的具体用法?C++ Nodo::getInfo怎么用?C++ Nodo::getInfo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Nodo
的用法示例。
在下文中一共展示了Nodo::getInfo方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char** argv)
{
ListaD<Receta>* recetas = new ListaD<Receta>();
Archivo* libro_txt = new Archivo("Libro.txt");
libro_txt->abrir();
string* buffer;
while( !libro_txt->isFinal() )
{
buffer = libro_txt->leerCampos( ',', 3 );
recetas->agregar( new Receta( atoi( buffer[0].c_str() ), buffer[1] , atoi( buffer[2].c_str() )) );
}
delete libro_txt;
Archivo* ingrediente_txt = new Archivo("Ingrediente.txt");
ingrediente_txt->abrir();
bool continuar;
Ingrediente* ingredAux;
string linea;
string nom;
int cal;
int codigo;
while( !ingrediente_txt->isFinal() )
{
linea = ingrediente_txt->leerLinea();
nom = linea.substr(0, linea.find(','));
linea = linea.substr( linea.find(',') + 1 );
cal = atoi( linea.substr(0, linea.find(',')).c_str() );
linea = linea.substr( linea.find(',') + 1 );
ingredAux = new Ingrediente( nom, cal );
continuar = true;
while( continuar )
{
if ( linea.find(',') == string::npos )
continuar = false;
codigo = atoi( linea.substr(0, linea.find(',')).c_str() );
linea = linea.substr( linea.find(',') + 1);
for( int x = 0; x < recetas->getSize(); x++ )
{
if( recetas->getElemento_info(x)->codigo == codigo )
{
// recetas->getElemento_info(x)->ingredientes->agregar(ingredAux);
recetas->getElemento_info(x)->ingredientes->agregar( new Ingrediente(*ingredAux) );
}
}
} // fin del while
} // fin del while
recetas->imprimir();
cout << endl;
for( int x = 0; x < recetas->getSize(); x++ )
{
recetas->getElemento_info(x)->ingredientes->imprimir();
}
ingredAux = new Ingrediente();
Nodo<Ingrediente>* nodoIngAux;
Nodo<Receta>* nodoRecAux;
Receta* recAux = new Receta();
cout << endl << endl;
cout << "Ingrese el codigo de una receta... ";
recetas->imprimir();
cout << "Codigo: ";
cin >> codigo;
recAux->codigo = codigo;
nodoRecAux = recetas->buscar(recAux);
if( nodoRecAux )
{
cout << "Lo ingredientes de la receta son: " << endl;
nodoRecAux->getInfo()->ingredientes->imprimir();
cout << "Desea modificar las calorias totales(Ingrese 1)" << endl;
//.........这里部分代码省略.........
示例2: procesarDatos
// procesa los datos
void procesarDatos()
{
ListaD<char>* lista_claves = new ListaD<char>( true, true ); // instancio lista doble
string buffer; // almacena datos
// crea la lista doblemente enlazada de letras
Archivo* claves = new Archivo( "claves.txt" ); // asocio archivo claves.txt
cout << claves->abrir() << endl << endl; // abro claves.txt
// mientras no llegue al final de claves.txt
while( !claves->isFinal() )
{
buffer = claves->leerCampo( ' ' ); // leo clave
lista_claves->agregar( (char*)buffer.c_str(), ListaD<char>::AGRE_CRE, true ); // agrego clave a la lista
} // fin del while
lista_claves->imprimir();
lista_claves->imprimir(true);
delete claves; // libero recursos
cout << endl << endl;
// descifrar el mensaje
Nodo<char>* clave = lista_claves->getCab(); // apunto a la cab de la lista
Archivo* mensa = new Archivo( "mensa.txt" ); // asocio archivo mensa.txt
Archivo* salida = new Archivo( "salida.txt" ); // asocio archivo salida.txt(no existe)
int sentido; // sentido del recorrido
int recorrido; // distancia(Nodos) a recorrer
char clave_escribir; // clave a escribir en el archivo salida.txt
cout << mensa->abrir() << endl; // aperturo mensa.txt
cout << salida->crear() << endl; // creo salida.txt para escritura
// mientras no llegue al fin de mensa.txt
while( !mensa->isFinal() )
{
buffer = mensa->leerCampo( ' ' ); // leo los tres digitos
sentido = atoi( buffer.c_str() ) / 100; // obtengo sentido del recorrido
recorrido = ( atoi( buffer.c_str() ) % 100 ) - 1; // obtengo la distancia
// recorrido hasta la clave especificada por recorrido
for( ; recorrido > 0; recorrido-- )
{
// si el sentido es a la dereche, clave sera su sucesor, de lo contrario, clave sera
clave = ( sentido == 1 ? clave->getLink_suc() : clave->getLink_pre() ); // su predecesor
} // fin del for
clave_escribir = clave->getInfo(); // obtengo clave del Nodo
salida->escribir( clave_escribir ); // escribo clave en salida.txt
} // fin del while
salida->escribir( "", true ); // obligo al flujo a escribir
delete mensa, salida; // libero recursos de archivos
} // fin de procesarDatos