elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema al ingresar variables en una aplicación (C++, Visual Studio 2010)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema al ingresar variables en una aplicación (C++, Visual Studio 2010)  (Leído 1,991 veces)
htcv96

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Problema al ingresar variables en una aplicación (C++, Visual Studio 2010)
« en: 6 Abril 2016, 02:38 am »

Buenas noches, soy nuevo en el foro y entre porque necesito ayuda en un trabajo de la universidad. No estoy pidiendo que me lo hagan, simplemente necesito que alguien sea tan amable de explicar porque salta error. El código es de una aplicación que permite ingresar letras y las muestra en una ListBox, realmente no se cuál es el problema y no he encontrado ninguna solución en internet asi que si pueden ayudarme estaría muy agradecido. El código está trabajado en Visual Studio 2010.

Este es el código de la clase
Código:
#ifndef _GESTION_H_INCLUDED
#define _GESTION_H_INCLUDED
#include <iostream>

class CGestionCaracteres{
private:
int N;
char* Vec;
public:
CGestionCaracteres(){
int N = 0;
Vec = new char[N];
}
~CGestionCaracteres(){}
//
int getN(){
return N;
}
char* getVec(){
return Vec;
}
//
void AgregarElemento(char x){
//if (aux >= 65 && aux <= 90 || aux >= 97 && aux <= 122)
char* Aux = new char[N + 1];

if (ComprobarX(x) == false){
N++;
Vec[N - 1] = x;
}
else{
Aux[0] = x;
for (int i = 0; i < N; i++){
Aux[i + 1] = Vec[i];
}
delete Vec;
N++;
Vec = Aux;
delete Aux;
}
}
/* */
};

#endif _GESTION_H_INCLUDED

y esta parte es del código de la ventana
Código:
#pragma once
#include "Gestion.h"

namespace GestionCaracteres {

using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;

/// <summary>
/// Summary for frmPrincipal
/// </summary>
public ref class frmPrincipal : public System::Windows::Forms::Form
{
private:
CGestionCaracteres* gestion;
public:
frmPrincipal(void)
{
InitializeComponent();
//
//TODO: Add the constructor code here
//
gestion = new CGestionCaracteres();
}
/* */
#pragma endregion
private: System::Void btnAgregar_Click(System::Object^  sender, System::EventArgs^  e) {
if (tbxAgregar->Text != ""){
char caracter = Convert::ToChar(tbxAgregar->Text);
if (caracter >= 65 && caracter <= 90 || caracter >= 97 && caracter <= 122){
gestion->AgregarElemento(caracter);
CargarLista();
}
else{
MessageBox::Show("Introduzca un valor valido.");
}
}
else{
MessageBox::Show("Introduzca una letra.");
}


}
void CargarLista(){
lbxLetras->Items->Clear();
for (int i = 0; i < gestion->getN(); i++){
lbxLetras->Items->Add((gestion->getVec()[i]).ToString());
}
}
};
}

El código si compila, la validación para verificar si es una letra también, el problema surge cuando se ingresa una letra y salta un error que me pide cerrar la ventana. Si es necesaria otra parte del código por favor pídanmela. Gracias de antemano.


« Última modificación: 6 Abril 2016, 02:53 am por htcv96 » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Problema al ingresar variables en una aplicación (C++, Visual Studio 2010)
« Respuesta #1 en: 6 Abril 2016, 07:37 am »

Si haces Vec=Aux y delete Aux lo liberas todo, si acaso deberías copia el array por valorz en vez de por referencia.
Para liberar arrays, que yo recuerde,  es con delete[] en vez de simplemente delete.
Por lo demás lo he revisado por encima. Puede que haya más cosas.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema al instalar visual studio 2010
.NET (C#, VB.NET, ASP)
vekt0r5 2 7,621 Último mensaje 22 Octubre 2011, 06:46 am
por vekt0r5
como poder hacer un istalador de una aplicacion creada en visual studio 2010
.NET (C#, VB.NET, ASP)
yovs 4 3,387 Último mensaje 22 Febrero 2013, 21:05 pm
por ABDERRAMAH
Problema MUY GRAVE con Visual Studio 2010
Programación General
Yaldabaot 5 3,291 Último mensaje 22 Mayo 2013, 22:23 pm
por Yaldabaot
Problema con Visual Studio 2010
.NET (C#, VB.NET, ASP)
firma10s04 2 2,671 Último mensaje 18 Junio 2013, 04:34 am
por raul338
Problema con Visual Studio 2010
.NET (C#, VB.NET, ASP)
Yaldabaot 2 2,222 Último mensaje 21 Agosto 2014, 20:22 pm
por Yaldabaot
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines