Avatar de usuario por pello in August 12, 2004, 10:42 am
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...  | 109 comments |  PELMAlink |  4035 reads
Avatar de usuario por pello in August 11, 2004, 11:24 am
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...  | 1 comments |  PELMAlink |  1518 reads
Avatar de usuario por pello in August 10, 2004, 8: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...  | 50 comments |  PELMAlink |  5539 reads
Avatar de usuario por pello in August 9, 2004, 9: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 |  1736 reads
Avatar de usuario por pello in August 8, 2004, 7: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 |  1965 reads
Avatar de usuario por pello in August 7, 2004, 1: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...  | 4 comments |  PELMAlink |  5625 reads
Avatar de usuario por pello in August 6, 2004, 8: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...  | 1300 comments |  PELMAlink |  23704 reads
Avatar de usuario por pello in August 5, 2004, 2: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 |  2238 reads
Avatar de usuario por pello in August 5, 2004, 8: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...  | 256 comments |  PELMAlink |  29097 reads
Avatar de usuario por pello in August 4, 2004, 8:14 pm
Vamos a ver como se declaran las funciones en c++. No tiene ningun misterio, es igual que en c. Siempre hay que especificar el tipo de retorno.
/**
* Funcion.cpp
* Programa con llamada a una funcion
* 
* Pello Xabier Altadill Izura 
*
* Compilado: g++ Funcion.cpp -o Funcion
*/

#include <iostream.h>

// Funcion: llamada
int llamada (int x, int y) {
	cout << "Estamos en la funcion!!" << endl;
	return (x+y);
}

int main() {

	// Estos comentarios son propios de C++

	cout << "Vamos a llamar a la funcion.."... 
Leer más...  | 0 comments |  PELMAlink |  1836 reads