Avatar de usuario por pello in August 13, 2004, 12:13 pm
Arrays
Se dice arrays o arreglos? en fin.
En c++ podemos definir y usar los arrays casi como en C. Ademas tenemos la ventaja de poder crear arrays de objetos. Veamos un programa en c++ que juega con los arrays:
/**
* ArrayEjemplo.cpp
* Clase que inicializa y maneja algunos arrays
*
* Pello Xabier Altadill Izura
*
* Compilado: g++ ArrayEjemplo.cpp -o ArrayEjemplo
*/


#include <iostream.h>

// Funcion principal
int main () {

// Declaramos dos arrays de enteros de 15 elementos [0..14]
int... 
Leer más...  | 0 comments |  PELMAlink |  1090 reads
Avatar de usuario por pello in August 12, 2004, 12:42 pm
Sobrecarga y valores por defecto
En un clase se pueden sobrecargar los metodos y los constructores, e incluso se pueden asignar valores por defecto a los parametros (como en php). Veamos el ejemplo del coche un poco mas desarrollado.
/**
* Coche.hpp
* Clase que representa un coche
* 
* Pello Xabier Altadill Izura 
*
*/
#include <iostream.h>


class Coche {
private:
	char *marca;
	int cilindrada;
	int caballos;
	enum marcha { Primera, Segunda, Tercera, Cuarta, Quinta, Pto_Muerto};

public:
	Coche();
	Coche(int... 
Leer más...  | 0 comments |  PELMAlink |  1091 reads
Avatar de usuario por pello in August 11, 2004, 1:24 pm
Las referencias
Una referencia es otra forma de acceder a un dato, una especie de alias. Cualquier operacion sobre una referencia afectara a ese dato al que hace referencia. Veamos un ejemplo simple:
/**
* Referencias.cpp
* Programa que muestra el uso de referencias
* 
* Pello Xabier Altadill Izura 
*
* Compilado: g++ Referencias.cpp -o Referencias
*/

#include <iostream.h>

int main() {

	// Definimos un dato y su referencia
	int numero;
	int &referenciaNumero = numero; // Ahi se... 
Leer más...  | 0 comments |  PELMAlink |  1019 reads
Avatar de usuario por pello in August 10, 2004, 10:32 am
Los punteros
Acaso creiais que en c++ no habia punteros? eso solo ocurre en Java. Los punteros no contienen datos, contienen direcciones de memoria. Para cada tipo de dato hay que definir un puntero.
/**
* Puntero.cpp
* 
* Clase que muestra las direcciones de variables
* Pello Xabier Altadill Izura
* Compilar: g++ Puntero.cpp -o Puntero
*/

#include <iostream.h>

int main () {

// Creamos varias variables:
int pruebaInt = 99, prueba2Int;
short pruebaShort = 34;
char carac = 'a';
int... 
Leer más...  | 0 comments |  PELMAlink |  1027 reads
Avatar de usuario por pello in August 9, 2004, 11:10 am
Iteracion con etiquetas
Es la manera primigenia de implementar iteraciones pero lo cierto es que el uso de etiquetas no se recomienda ya que es dificil de entender un programa con etiquetas. A ser posible hay que evitarlas.
/**
* Loop.cpp
* 
* Programa que muestra como usar iteraciones
* Pello Xabier Altadill Izura
* Compilar: g++ Loop.cpp -o Loop
*/

#include <iostream.h>

// Programa principal
int main () {

	cout << " Hola, vamos a mostrar un loop " << endl;

	//Inicializamos variables
	int... 
Leer más...  | 0 comments |  PELMAlink |  1232 reads
Avatar de usuario por pello in August 8, 2004, 9:50 pm
Tu primera clase c++ No hay que perder de vista el hecho de que c++ es un lenguaje orientado a objetos.
Sin animos de volver a explicar que es la POO, los beneficios que constituye vamos a limitarnos a resumir. Una clase c++ es la representacion de un objeto. Un objeto es una entidad formada por sus atributos y sus metodos.
Con el afan de hacer las cosas ordenadamente, siempre se separa la definicion de la clase en un fichero de cabedeceras (extension .hpp, similar al .h de lenguaje c) y la implementacion...
Leer más...  | 0 comments |  PELMAlink |  1064 reads
Avatar de usuario por pello in August 7, 2004, 3:06 pm
El camnio de c++ es largo, pero se sigue avanzando. Veamos las funciones inline, un recurso interesante para mejorar el rendimiento.
/**
* Inline.cpp
* Programa para probar funciones Inline
* Las funciones Inline no se compilan como funciones aparte,
* lo que se hace al compilar es añadir el contenido de la funcion haya
* donde se se invoca. Con lo que es mucho mas rapido de ejecutar
* y ademas nos da la limpieza de separar el codigo.
*
* Pello Xabier Altadill Izura 
*
* Compilado: g++... 
Leer más...  | 0 comments |  PELMAlink |  1168 reads
Avatar de usuario por pello in August 6, 2004, 10:17 am
Bueno, conociendo los tipos de datos ya podemos empezar a operar con ellos. Dentro de c++ tenemos los tipicos operadores matematicos + - * / y tambien los operadores unarios (++ --) En este primer ejemplo vemos operadores unarios y la asignacion multiple.
/**
* Operadores.cpp
* Programa para probar algunos operadores
* Pello Xabier Altadill Izura 
*
* Compilado: g++ Operadores.cpp -o Operadores
*/

#include <iostream.h>

int main () {

	// Sacamos por salida standar  un mensaje
	cout << "Vamos... 
Leer más...  | 0 comments |  PELMAlink |  1210 reads
Avatar de usuario por pello in August 5, 2004, 4:40 pm
Con este (mejorable) script se comprueba un determinado servicio. Se comprueba si existe su pid y si su puerto esta abierto. En caso de no estar abierto se ejecuta el comando especificado.
En este ejemplo se ve el caso del servicio proftpd:
#!/bin/bash

# comprobador de proceso

NOMBRE=proftpd
PIDFILE=/usr/local/var/proftpd.pid
PUERTO=21
COMANDO="/etc/rc.d/init.d/proftpd restart"

echo comprobando si $NOMBRE esta OK...


if [ -f ${PIDFILE} ]
then
        echo PID [`cat ${PIDFILE}`]
        netstat... 
Leer más...  | 0 comments |  PELMAlink |  1554 reads
Avatar de usuario por pello in August 5, 2004, 10:25 am
Los tipos de datos de c++ no varian mucho respecto a c y son bastante evidentes, tal y como se puede apreciar en este codigo.
/**
* Tipos.cpp
* Programa para sacar el tamaño de cada tipo de datos
* Pello Xabier Altadill Izura 
*
* Compilado: g++ Tipos.cpp -o Tipos
*/

#include <iostream.h>

int main () {

	// Sacamos el tamaño de cada tipo	
     cout << "El tamaño del int es:		"    << sizeof(int)    << " bytes.
";
     cout << "El tamaño del short es:	" << sizeof(short)... 
Leer más...  | 0 comments |  PELMAlink |  2764 reads