elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 21:27  


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  Warnings en tratamiento de ficheros con C++ Builder XE
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Warnings en tratamiento de ficheros con C++ Builder XE  (Leído 774 veces)
mario_tko

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Warnings en tratamiento de ficheros con C++ Builder XE
« en: 15 Noviembre 2011, 12:26 »

Hola compañeros, a ver si me podeis ayudar en estas pequeñas dudas que tengo.

El problema: Crear un Arbol Trie que apunte a unas estructuras de datos (listas doblemente enlazadas). Se trata de un diccionario con acciones de Insertar pababra, Eliminar palabra, Buscar palabra y Decir si el "diccionario" esta vacio.

Por ahora tengo terminado la interfaz (ArbolTrie.h) y estoy con la implementacion, pero se me estan presentando muchas dudas. Nose si trabajar directamente sobre el fichero .txt o sobre el Arbol y me estoy haciendo un lio con los nodos y demas.

Por ahora he empezado a implementar la funcion EsVacio() que me dice si el arbol/fichero txt esta vacio (si no contiene ninguna palabra), no me da errores, pero me da algunos warnings en

Aqui esta el codigo:


Código:

//Implementacion de la clase ArbolTrie
//Clase ArbolTrie -- IMPLEMENTACION

#include <iostream.h>
#include <stdio.h>
#include <fstream.h>
#include <iomanip.h>

#include "ArbolTrie.h"

#ifndef __ARBOLTRIE_CPP__
#define __ARBOLTRIE_CPP__

using namespace std;

//Constructores
ArbolTrie::ArbolTrie()
{
T = NULL;
}

//Destructores
ArbolTrie::~ArbolTrie()
{
// No hay que hacer nada
}



//////////////IMPLEMENTACION DEL METODO CONSULTA/////////////////



int ArbolTrie::EsVacio()//Comprueba si tiene palabras
{
ifstream dic;
dic.open("diccionario.txt", ios::in);

char c;

if(!dic)
{
cerr << "ERROR EN LA APERTURA";
return 1;
}

dic >> c;

if(dic.eof())
{
cout << "FICHERO VACIO" << endl;
return 0;
}
else
{
return 1;
}
dic.close();   //////EL WARNING SALE AQUI

}///OTRO WARNING ME SALE AQUI

#endif


WARNINGS:
Código:

[BCC32 Warning] ArbolTrie.cpp(58): W8066 Unreachable code
  Full parser context
    ArbolTrie.cpp(35): parsing: int ArbolTrie::EsVacio()
[BCC32 Warning] ArbolTrie.cpp(59): W8070 Function should return a value
  Full parser context
    ArbolTrie.cpp(35): parsing: int ArbolTrie::EsVacio()


Alguien me puede ayudar?


En línea
do-while


Desconectado Desconectado

Mensajes: 604


Cuando me afeito, recuerdo porque me dejo barba.


Ver Perfil
Re: Warnings en tratamiento de ficheros con C++ Builder XE
« Respuesta #1 en: 15 Noviembre 2011, 16:01 »

¡Buenas!

Prueba con esto...
Código
 
if(dic.eof())
{
dic.close(); //cerramos el fichero antes de volver.
cout << "FICHERO VACIO" << endl;
return 0;
}
//else: este else no hace falta. Ya sabemos que el fichero no ha llegado a su fin
{
//return 1; si pones aqui el return, nunca llegaras a cerrar el fichero
}
dic.close();   //////EL WARNING SALE AQU
 
return 1; //la funcion termina devolviendo un valor despues de cerrar el fichero
 

A ver si ahora no te suelta los warnings... sino, a bote pronto, no veo errores (que no quiere decir que no se me hayan podido pasar)...

¡Saludos!


En línea

¡¡¡Feliz año nuevo!!!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines