![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Register | FAQ | Members List | Calendar | Guía de estilo | Today's Posts |
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
quizas sea que tienes que poner:
delete Form1->cEntornoAnt o donde este situado el identificador creo que el delete ese del Finally es redundante....pues los objetos locales de metodos y funciones se borran automaticamente por el compilador al salir de los mismos Last edited by Snaked : 23/11/2016 at 17:02. |
|
#2
|
||||
|
||||
|
Gracias por las respuestas. Ya encontré el error y es una tontería
: Simplemente era sacar las declaraciones del try.Code:
char cEntornoAnt[256] = "\0";
TIniFile *fIni;
try
{
try
{
[...]
}
catch(...)
{
}
}
|
|
#3
|
|||
|
|||
|
ah claro..... yo no cai en eso pero tampoco es que sea experto en try catch....creo que solo lo habre hecho 1 o 2 veces y la primera fue en el curso de programacion de C++ builder de auto-enseñanza que hice.... jejeejej
lo que si creo que me apetece es volver a repasarme el libro de programacion en C y ahondar un poco en otro de programacion C++ y ver si ahora, con un poco mas de experiencias a las espaldas lo cojo con soltura y vicio. |
|
#4
|
||||
|
||||
|
__finally no es C++ estándar y solo funciona con los compiladores de Microsoft, por lo tanto en el c++builder no te va a funcionar. Además en tu código no lo necesitabas para nada y solo necesitabas quitarlo sin más.
Por otro lado ese código no está bien ya que si falla al obtener memoria, en tu código si o si intentará liberarla y eso es peligroso. Además cEntornoAnt es creado de forma estática e intentas liberar su memoria con delete, delete se usa para liberar la memoria obtenida con new. Así deberías ponerlo: PHP Code:
|
|
#5
|
||||
|
||||
|
Ten en cuenta que C++ usa RAII:
https://es.wikipedia.org/wiki/RAII Quote:
__________________
El malabarista. |
|
#6
|
|||
|
|||
|
Quote:
Muy útil también para estos casos "unique_ptr" o "auto_ptr". Last edited by j0seant : 30/11/2016 at 17:33. |
|
#7
|
|||
|
|||
|
Quote:
Sobre __try, __except y __finally (SEH) y cosas similares (controlar errores y excepciones en C++) en Windows : https://msdn.microsoft.com/en-us/library/hh279678.aspx https://msdn.microsoft.com/en-us/library/swezty51.aspx Y por cierto, aunque no no soy programador ya se que existen documentos similares a este, pero hacen referencia a C++/CLI y aun asi sigue existiendo el mismo problema, aunque no se mencione. Un saludo |
![]() |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Try/except/finally | jsc | OOP | 14 | 13/09/2011 19:06 |
| Capturar Errores con Try, Finally, End | GerTorresM | OOP | 1 | 23/04/2011 23:16 |
| Try Except --finally-- | Caral | Varios | 13 | 02/10/2006 22:12 |
| Errorsys, o gestión de errores | dec | Trucos | 0 | 01/07/2006 12:22 |
| Gestión Errores en DBEXPRESS | asirvent | Conexión con bases de datos | 0 | 21/11/2003 12:39 |
|