Sie sind auf Seite 1von 10

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

Ms VISUAL C++
El entorno Windows se ha convertido en el estndar de ejecucin de las aplicaciones y el MS-DOS
(pantalla modo texto) puede considerarse prcticamente obsoleto, de manera que la presente se va a tratar
de ayudar a los programadores del entorno MS-DOS a ingresar de una manera sencilla en el mundo de la
programacin bajo Windows. Las nuevas tecnologas de 32bits y prximamente 64 bits, han desplazado
por completo al MS-DOS y si somos o pretendemos ser desarrolladores de software de ingeniera, no nos
queda otro remedio que comenzar a implementar nuestras ideas en este sistema operativo, as como
involucrarse en las nuevas tendencias como el uso de software libre (LINUX). Hoy en da las nuevas
versiones de los lenguajes de programacin que corren sobre la plataforma de Microsoft, estn haciendo
uso de la nueva librera .NET, as como ltimamente el manejo de base de datos y la interaccin con
internet, es fundamental para toda aplicacin bsica.
Como todos sabemos, C es un lenguaje de alto nivel, basado en funciones, que permite desarrollos
estructurados. Entre otras muchas caractersticas contempla la definicin de estructuras de datos,
recursividad o indirecciones a datos o cdigo (punteros). C ++, por su parte, es un superconjunto de
C, al que recubre con una capa de soporte a la POO. Permite por tanto la definicin, creacin y
manipulacin de objetos.
Visual C++ es un entorno integrado de desarrollo que permite la programacin orientada a objetos (POO)
conjuntamente con el sistema de desarrollo SDK (tambin denominado API) de Windows. Al ser un
entorno integrado Visual C++ incluye, entre otras, las siguientes herramientas de desarrollo: Editor de
texto, Compilador/Enlazador, Depurador, Visor de datos y dependencias (Browser).
Desde el punto de vista del usuario Windows es un sistema amigable, pero desde el punto de vista del
desarrollador observaremos todo lo contrario. El SDK de Windows no es mas que un complejo conjunto
de funciones que aade adems numerosas definiciones de tipos de datos nuevos para cualquier
programador de C/C++ para DOS. Para solucionar este problema, Visual C++ incluye la librera de clases
MFC (Microsoft Foundation Classes) que permite crear y gestionar de manera intuitiva componentes
tpicos de Windows. Esto es, la MFC es una implementacin que utiliza el API encapsulando todas las
estructuras y llamadas a funciones en objetos fciles de utilizar. Basndose en la potencia de la MFC,
Visual C++ se convierte en un generador de programas C++ para Windows.
Requisitos mnimos hardware y software

El compilador Visual C++ 6.0 estndar de Microsoft funcionar en un gran rango de


computadoras con procesadores Intel. La siguiente lista muestra los requerimientos hardware y
software mnimos necesarios para ejecutar la versin de 32 bits del compilador Visual C++ de
Microsoft:

Microsoft Windows 95/98 o Windows NT.


Microsoft Visual C++
Intel 486 o superior
l6MB de RAM.
Pantalla con resolucin 800 x 600 o superior
20 MB de espacio de disco fijo libre.
Ratn u otro perifrico para sealar.
InstallWizard est diseado para computadoras tpicas de desarrollo, lo que significa un procesador
Pentium y una resolucin de 800 x 600 o superior. Se puede ejecutar lnstallWizard en una pantalla
de 640 x 480, pero es posible que se necesite disponer de ventanas diferentes para ver toda la informacin.

Documentacin
La documentacin en lnea de Visual C++ consta de Quick Reference (Referencia rpida) y
Books Online (Documentacin en lnea). La Referencia rpida permite localizar rpidamente la
informacin mientras se est programando. La Documentacin en lnea es el conjunto de documentacin
para Visual C++ en formato en lnea. Todos los temas de Referencia rpida tienen un enlace a la

VISUAL C++ 6.0

Pag. 1/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

Documentacin en lnea, donde est disponible la informacin completa.


Directorios
La Tabla 1.1 muestra el grupo tpico de subdirectorios para la instalacin del compilador Visual
C++, realizado en el subdirectorio MSVC.
Tambin se encontrarn varios archivos README en el subdirectorio MSDEV. Estos archivos se
utilizan para proporcionar informacin sobre la ltima versin (y errores) del compilador.
Tabla 1.1. Subdirectorios importantes de Visual C++
Localizacin

Objetivo

BIN

Archivos ejecutables y herramientas de desarrollo necesarias para implementar


aplicaciones de 32 bits.
Archivos de ayuda.
Archivos de cabecera y de tiempo de ejecucin de C++
Bibliotecas de Win32 SDK y de tiempo de ejecucin de C++
Microsoft Foundation Class (MFC).

HELP
INCLUDE
LIB
MFC

Archivos de Biblioteca
OLE
PROJECTS
TEMPLATES
SAMPLES

Archivos para el desarrollo de aplicaciones OLE.


Subdirectorio utilizado para organizar los proyectos de desarrollo.
Subdirectorio utilizado para organizar las plantillas de objetos.
Programas de ejemplo.

Cabeceras y tipos precompilados


Visual C++ coloca tipos genricos, prototipos de funciones, referencias externas y declaraciones de
funciones miembro en unos archivos especiales denominados archivos de cabecera. stos contienen
muchas de las definiciones crticas necesarias por los mltiples archivos fuente que actan conjuntamente
para crear la versin ejecutable del programa. Algunas de las partes de estos archivos de cabecera normalmente vuelven a ser compiladas por cada mdulo que la incluye. Desafortunadamente, repetir la
compilacin de parte del cdigo puede hacer ms lento el compilador.
Visual C++ aumenta la velocidad del proceso de compilacin, permitiendo precompilar los archivos
cabecera. Aunque el concepto de cabeceras precompiladas no es nuevo, la forma en que Microsoft ha
implementado esta caracterstica s lo es. La pre - compilacin guarda el estado de la compilacin de una
aplicacin en un cierto punto y representa la relacin que se establece entre el archivo fuente y la
cabecera precompilada. Es posible crear ms de un archivo de cabecera precompilado por archivo fuente.
Una de las mejores aplicaciones de esta tecnologa afecta al ciclo de desarrollo de una aplicacin que
tiene frecuentes cambios en el cdigo pero no frecuentes definiciones de la clase base. Si el archivo de
cabecera est precompilado, el compilador puede concentrar su tiempo en los cambios del cdigo fuente.
Las cabeceras precompiladas tambin proporcionan un aumento en el tiempo de compilacin para
aplicaciones con cabeceras que constan de grandes porciones de cdigo para un mdulo dado, como suele
suceder con los programas en C++.
El compilador de Visual C++ supone que el estado actual del entorno del compilador es el mismo que
cuando se compilaron algunas de las cabeceras precompiladas. El compilador mostrar un aviso si detecta
alguna inconsistencia. Tal inconsistencia podra resultar de una modificacin en los modelos de memoria,
de un cambio en el estado de las constantes definidas o de la eleccin de las diferentes opciones para la
depuracin o la generacin de cdigo.

VISUAL C++ 6.0

Pag. 2/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

A diferencia de otros muchos compiladores de C++, el compilador de C++ de Microsoft no limita la


precompilacin a los archivos de cabecera. Como el proceso permite precompilar un programa hasta un
punto especifico, puede incluso precompilar el cdigo fuente. Esto es extremadamente significativo para
los programas en C++ ya que contienen la mayora de las definiciones de la funcin miembro en archivos
cabecera. En general, la precompilacin est reservada para aquellas partes del programa que son
consideradas estables; se disea para minimizar el tiempo necesario para compilar las partes del
programa en el desarrollo.
La biblioteca Microsoft Foundation Class (MFC)
Las aplicaciones Windows son fciles de utilizar, pero no de desarrollar. Muchos programadores
estn cansados de tener que manejar cientos de funciones API de Windows, que son necesarias para
escribir aplicaciones Windows.
La solucin de Microsoft a este paso de aprendizaje angosto es la biblioteca fundation Class
orientada a objetos. Las clases reutilizables de C++ son mucho ms fciles de dominar y utilizar La
biblioteca Microsoft Foundation Class (MFC) tiene todas las ventajas de la abstraccin de datos ofrecida
por C++ y su uso simplifica la programacin en Windows. Los programadores principiantes pueden utilizar las clases a modo de un "recetario" y los programadores experimentados en C++ pueden extender
las clases o integrarlas en su propia jerarqua de clases.
La biblioteca MFC contiene clases para la gestin de objetos Windows y ofrece una serie de clases de
propsito general que se pueden utilizar en aplicaciones tanto MS-DOS como Windows. Por ejemplo,
existen clases para crear y gestionar archivos, cadenas, tiempo, almacenamiento permanente y manejo de
excepciones.
En efecto, la biblioteca MFC representa casi todas las prestaciones API de Windows e incluye un
cdigo sofisticado que simplifica el procesamiento de mensajes, diagnsticos y otros detalles que son
partes normales de todas las aplicaciones Windows. Esta combinacin lgica y el aumento de funciones
API de Windows tiene diez ventajas claves:

La encapsulacin de las API de Windows es lgica y completa. La biblioteca MFC presta apoyo
para todas las funciones API de Windows utilizadas con frecuencia, incluyendo funciones de
ventanas; mensajes; controles; mens; cuadros de dilogo; objetos GDI (interfaz de dispositivos
grficos) tales como fuentes, brochas, lpices y mapas de bits; enlace de objetos y la interfaz de
documento mltiple (MDI).
Las funciones MFC son sencillas de aprender Microsoft ha hecho un gran esfuerzo para mantener
los nombres de las funciones MFC y los parmetros asociados son lo ms similar posible a las
clases padre API de Windows. Esto minimiza la confusin para los programadores de Windows
experimentados que deseen obtener las ventajas de la plataforma MFC simplificada. Tambin
facilita a los programadores que se inician en Windows el crecimiento dentro del superconjunto de
las funciones API de Windows cuando se est preparado o cuando la aplicacin lo requiera.

El cdigo C++ es ms eficiente. Una aplicacin utilizar slo un poco de RAM extra cuando utilice
las clases de la biblioteca MFC. La velocidad de ejecucin de una aplicacin MFC es casi idntica
a la misma aplicacin escrita en C y utilizando el estndar API de Windows.
La biblioteca MFC ofrece un manejo automtico del mensaje. La biblioteca Microsoft Foundation
Class elimina una fuente frecuente de errores de programacin, el bucle del mensaje API de
Windows. Las clases MFC estn diseadas para manejar de forma automtica cada uno de los
mensajes de Windows. En lugar de utilizar las instrucciones sensibles al contexto estndares, cada
uno de los mensajes de Windows se proyecta directamente a una funcin miembro, que toma la
accin apropiada.
La biblioteca MFC permite diagnsticos propios. Incorporada a la biblioteca MFC se encuentra la
posibilidad de realizar diagnsticos propios. Esto significa que puede verter informacin sobre

VISUAL C++ 6.0

Pag. 3/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

varios objetos a un archivo y validar un miembro del objeto variable, todos en un formato fcil de
entender
La biblioteca MFC incorpora una arquitectura robusta. Anticipando la gran necesidad del
estndar ANSI de C, la biblioteca Microsoft Foundation Class ya incorpora una amplia arquitectura
del manejo de excepciones. Esto permite que un objeto MFC recupere elocuentemente a partir de
condiciones de errores estndar, tales como "sin memoria", seleccin de opcin no vlida y
problemas cargando el recurso o el archivo. Cada componente de la arquitectura es ms compatible
con las recomendaciones ANSI de C propuestas.
La biblioteca MFC ofrece la introduccin de objetos dinmicos. Esta prestacin extremadamente
potente retrasa la introduccin de un objeto asignado dinmicamente hasta el tiempo de ejecucin.
Esto permite manipular un objeto sin tener que preocuparse de su tipo de datos subyacente. Como
la informacin sobre el tipo de objeto se devuelve en tiempo de ejecucin, el programador est
exento de un nivel de detalle adicional.

La biblioteca MFC puede coexistir en armona con aplicaciones de Windows basadas en C. La


prestacin ms importante de la biblioteca Microsoft Foundation Class es la posibilidad de
coexistir con aplicaciones de Windows basadas en C que utilizan las API de Windows. Los
programadores pueden utilizar una combinacin de clases MFC y llamadas a API de Windows
dentro del mismo programa. Esto permite que una aplicacin MFC se desarrolle fcilmente dentro
del cdigo orientado a objetos de C++ como la experiencia o la demanda requiera. Este entorno
transparente es posible debido a los convenios de denominacin comunes entre las dos
arquitecturas. Esto significa que las cabeceras MFC, los tipos y las definiciones globales no tengan
conflictos Con los nombres de las API de Windows. La gestin transparente de la memoria es otro
componente clave para que esta relacin tenga xito.

La biblioteca MFC se puede utilizar con MS-DOS La biblioteca Microsoft Foundation Class se
dise especficamente para desarrollar aplicaciones en Windows. Sin embargo, muchas de las
clases proporcionan frecuentemente los objetos necesarios para la manipulacin de cadenas y de
archivos de E/S. Por esta razn, estas clases de propsito general pueden utilizarlas tanto los
desarrolladores de Windows como los de MS-DOS.

La biblioteca MFC y los asistentes. Los asistentes de Control y de Clases slo crean un cdigo
compatible con MFC. Estos desarrolladores de programas dinmicos son necesarios para el
desarrollo de aplicaciones OLE.

VISUAL C++ 6.0

Pag. 4/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

PRIMER LABORATORIO
OBJETIVO: Al finalizar el laboratorio el alumno podr crear aplicaciones bsicas en el modo texto,
el modo grfico, as como tambin entender la estrecha relacin que existe sobre la teora de la
programacin orientada a objetos con el Visual C++, usando el concepto de herencia, polimorfismo,
encapsulacin, etc.
Fecha de publicacin primera edicion: Agosto del 2005.
Fecha ultima de revisin: 12/08/2005, 17/05/2006,01/11/2006

PARTE I : PROGRAMA PARA CONSOLA


APLICACIN BASICA
Empezaremos creando el siguiente proyecto:
Menu file/ New/ Win32 Console Application
Asigne un nombre al proyecto en Project name: ejemplo de consola1
Rutee con el botn de Location, y asigne un directorio donde se almacenara su proyecto, use
de preferencia el disco duro (no use disket para este propsito)
Luego presione OK, luego seleccione: A Hello, World Application, finalmente Finish
Observe que el asistente a creado un proyecto base, para ejecutarlo presione F5. Con la ayuda del
profesor revise los archivos generados. Una vez finalizado, cierre el proyecto con el men file/
close workspace
Ahora Cree otro proyecto con el nombre de:
ejemplo de consola 2
Siga los mismos pasos, pero ahora escoja: A empty Project en vez de A Hello, World
Application, Luego inserte un archivo de codigo, men file/new/files/c++ source files/file name:
(indique un nombre para este archivo), luego presione OK.
Ingrese el siguiente cdigo siguiendo las recomendaciones del profesor para crear este programa,
compile y ejectelo, observe algunas diferencias con el Borland C++ 5.0
#include <conio.h>
#include <iostream.h>
#include <math.h>
double sumatoria (float x , int n);
long fact (int n);
void main()
{ int x,n;
float R;
clrscr();
cout<<"ingrese el valor de x =";cin>>x;
cout<<"ingrese el valor de n =";cin>>n;
R= sumatoria (x,n);
cout <<"\nEl valor aproximado de la sumatoria del seno es="<<R;
cout <<"\nEl valor del seno es="<<sin(x); getch();
}
long fact (int n)
{ int i; long f= 1 ;
for (i=2; i<=n;i++)
f*=i;
return f ;}
double sumatoria (float x, int n)
{ int i; double s=0;
for(i=0;i<=n;i++)
s +=pow(-1,i)*pow(x,2*i+1)/fact(2*i+1);
return s;
}

VISUAL C++ 6.0

Pag. 5/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

PARTE II: PROGRAMA PARA EL ENTORNO WINDOWS


PRIMERA APLICACIN BASICA
En este tipo de aplicaciones usaremos la herramienta de desarrollo MFC AppWizard del visual C++, el
cual generara una aplicacin inicial base. Empezaremos creando el siguiente proyecto:

Menu file/ New


Seleccione MFC App Wizard (exe)
Rutee con el botn de Location, y asigne un directorio donde se almacenara su proyecto, use
de preferencia el disco duro (no use disket para este propsito)
Asigne un nombre al proyecto en Project name: ejemplo1

MFC: Clases fundamentales de Microsoft, contiene estructuras predefinidas que pueden usarse para
elaborar objetos.
Luego de dar OK, note lo siguiente: Se crear automticamente una carpeta con el nombre del proyecto
dentro de la carpeta indicada en location, en este caso ejemplo1. (Puede comprobarlo con el explorador
de windows), luego se activar los
pasos del AppWizard y se mostrara el
siguiente cuadro:
Step1
Aqu le preguntara mediante una serie
de cuadros de preguntas diferentes
aspectos que le permitirn darle una
mayor funcionalidad a su aplicacin,
ntese
que
en
este
caso
desarrollaremos una aplicacin del
tipo cuadro de dialogo (Dialog
based),
dndote
toda
una
infraestructura de clases que te
permitirn desarrollar tu aplicacin sin
necesidad de definir las funciones que
tienen que ver con el manejo de la
interfase. Entonces seleccione Dialog

VISUAL C++ 6.0

Pag. 6/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

based, y luego next


Step2
En este cuadro puede configurar
algunos parmetros, por ejemplo:
Si desea que se genere un men
contextual del cuadro de
dialogo, active el check de
About Box
Si desea que se genere un botn
para llamar a la ayuda de su
programa active el check de
Context-sensitive Help
Si desea que algunos controles
tengan
un
aspecto
tridimensional
tendr
que
mantener activo el check de 3D
controls
En la seccin Please enter a
title for your dialog: Inserte un
ttulo para su cuadro de dilogo
como
por
ejemplo:
MI
PRIMERA APLICACIN
Se sugiere dejar las opciones
por defecto, tal como se muestra
en el cuadro anterior y aplique
siguiente para mostrar el
siguiente cuadro dialogo:
Step 3
En esta pantalla se recomienda dejar
los valores por defecto para
mantener un Standard en la
codificacin de los archivos fuente
as como para su distribucin.

Step4
En esta pantalla se muestra las
clases que se han generado como
base para el desarrollo de su
aplicacin,
luego
finalmente
presione el botn Finish para
mostrar la siguiente pantalla.

VISUAL C++ 6.0

Pag. 7/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

Finalmente
En este cuadro se muestra un reporte
de las caractersticas de nuestra
aplicacin. Presione OK

Luego que el AppWizard ha generado la aplicacin base, otra vez se mostrar el entorno de desarrollo del
visual C++, mostrando la siguiente apariencia.

VISUAL C++ 6.0

Pag. 8/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

Ya que este es un programa base, ya


puede ejecutarlo, para ello primero
deber compilar el proyecto a un
archivo ejecutable (.exe) use la opcin
del men Build/ Build ejemplo1.exe o
tambien [F7] , Luego ejecute el
programa
con
Build/
Execute
ejemplo1.exe o [ctrl.] [F5].
A continuacin vera su aplicacin correr
aunque solamente mostrar un cuadro
sin ninguna utilidad hasta el momento.

DISEANDO EL CUADRO DE DIALOGO


Para poder enfocar el cuadro de dialogo,
haga clic en la pestaa resource view
del panel del workspace, haga clic en el
smbolo (+) para poder desplegar
ejemplo1 resources, seleccione Dialog,
debe observar 2 cuadros de dialogo que
ha
generado
el
AppWizard:
IDD_ABOUTBOX
y
IDD_EJEMPLO1_DIALOG. Haga 2
click en el segundo para activarlo en el
rea de trabajo del visual y realice lo
siguiente:

Haga clic en el mensaje que


aparece en el centro ( A
HACER: Colocar)
Y luego presione la tecla
[delete] para eliminarlo.
Luego arrastre el botn cancelar y estrelo, con el uso del mouse hasta la ubicacin indicada a
continuacin

Cambie la propiedad caption del botn Cancelar por Cerrar, para ello haga clic derecho en dicho botn
y seleccione properties

VISUAL C++ 6.0

Pag. 9/23

Prof: Mximo Obregn Ramos

UNIVERSIDAD NACIONAL DE INGENIERIA

FIM - AACIBAH

En las propiedades del botn cambie la seccin caption: Cancelar por Cerr&ar, el botn tendr la
siguiente apariencia:

Note que la a aparece subrayado lo cual permitir activar este botn, adems del click con el mouse,
tambin se podr invocar con la combinacin de teclas [Alt]+[a]
Obs: El ID representa el nombre de la
variable que se asignara a dicho control,
por ahora djelo como esta, pero si se
desea podras cambiarlo. Recuerde que
en este caso se llama IDCANCEL
Ahora usted Practique, y cambie de tal
manera que tenga la apariencia mostrado
en la parte derecha.
El botn Hola que tenga el ID:
IDHOLA
Y el botn Cerrar que tenga el ID:
IDCerrar
Si es necesario puede usar la cuadricula y la regla para tener una mejor referencia: Actvelo en el men
Layout / Guide Settings, aqu podr fijar el espaciado de la cuadricula. Esto tambin puede ser activado
con la tecla [Ctrl.] [G], varias veces para conmutar entre diferentes modos. Tambin puede usar las
dems opciones del men layout para poder alinear los botones y asignar un mismo tamao a estos
controles, practique
ASIGNANDO CODIGO A LOS BOTONES (CLASS WIZARD)
Para ello tendremos que invocar el Class Wizard, la cual puede ser invocada con una de las siguientes
procedimientos:
Menu View/
Class Wizard
[Ctrl.] [W]
Hacer click
derecho en el
botn
o
control
deseado
y
seleccionar
Class Wizard
Trabajemos con
el botn Hola,
hgale
click
derecho
y
seleccione Class
Wizard, aparecer
el
siguiente
cuadro:

VISUAL C++ 6.0

Pag. 10/23

Prof: Mximo Obregn Ramos

Das könnte Ihnen auch gefallen