C/Visual C - excepciones en sobrecarga

 
Vista:

excepciones en sobrecarga

Publicado por rober (44 intervenciones) el 24/03/2006 17:50:47
hola muy buenas, alguien puede darme un ejemplo de control de errores o excepciones en sobrecarga de operadores? Algun ejemplo de control de errores?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:excepciones en sobrecarga

Publicado por fernando.gomez (1603 intervenciones) el 25/03/2006 00:02:13
// Ej. 1
try
{
throw std::exception("Se produjo algún error");
}
catch (std:.exception e)
{
cout << "Se ha manejado un error: " << e.what() << endl;
}

// Ej. 2
class CClase
{
private:
int m_iAlgunDato;

public:
CClase& operator= (const CClase& objClase)
{
if (objClase.m_iAlgunDato == 0) {
throw std::exception("Por algún misterioso motivo, la variable no puede ser cero");
}
m_iAlgunDato = objClase.m_iAlgunDato;
return *this
}
};

En ejemplo 1, se lanza y se cacha una excepción cualquiera. En el ejemplo 2, tengo una clase con un operador sobrecargado (el operador de asignación) que si se cimple una condición misteriosa, se lanza una excepción.

Espero que eso sea a lo que te referías...

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:excepciones en sobrecarga

Publicado por rober (44 intervenciones) el 25/03/2006 10:32:25
Si me referia a eso, lo que pasa es q lo necesito algo mas sencillo y con otros operadores, tengo el lunes el examen y solo hemos echo por separado y ahora hay plantillas, y control de errores o excepciones dentro de sobrecarga de suma, resta o incremento
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:excepciones en sobrecarga

Publicado por fernando.gomez (1603 intervenciones) el 26/03/2006 03:00:36
Pues intenta cambiar operator= por el que necesites...

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar