El estándar de C + + biblioteca incluye una serie de funciones y estructuras para ayudar a los programadores en el trato con el tiempo en sus aplicaciones. En este tutorial creará un C + + clase llamada despertador que servirá como un simple envoltorio alrededor de las estructuras time_t y tm usados por la biblioteca el tiempo de C, e incluye un programa de ejemplo simple que utiliza esta clase de reloj para la salida de la hora del sistema en la consola . Cosas que necesitará
C + + Compiler
C + + estándar Library of editor de texto o C + + IDE
Ver Más instrucciones
1
Crear tus archivos . Este programa requerirá tres archivos : un archivo de encabezado clock.h para definir la clase de reloj, un clock.cpp C + + archivo de origen para definir la implementación de la clase de reloj, y, finalmente, un programa de ejemplo simple que utiliza esta clase en main.cpp .
2
Definir la clase de reloj . Abra el archivo de cabecera clock.h y definir la estructura de la clase Clock introduciendo el siguiente código en él
# ifndef _CLOCK_H # define _CLOCK_H
Reloj clase {public : . GetHours int () ; getMinutes int (); getSeconds int ();
std :: string getTime ();
reloj ( ) ; privada: } ;
# endif /* _CLOCK_H * /foto
la clase ha sido definida como que tiene cuatro funciones principales ( además del reloj constructor ( ) ) . Los getHours , getMinutes y funciones getSeconds recuperará cada uno una parte diferente de la época de la + biblioteca de tiempo estándar de C + , utilizando la hora actual del sistema como su guía . El getTime () función formatear estos en un estándar HH : MM : . SS cadena , ya que estamos acostumbrados a ver en los relojes digitales
ifndef , definir y etiquetas endif son opcionales , sin embargo , es un buenas prácticas para entrar en el uso de estos. Cuando la construcción de proyectos más grandes, incluyendo las siguientes etiquetas se asegurará de que un archivo de cabecera dado se carga en la memoria sólo una vez . Esto reduce el riesgo de errores de dependencias circulares , y haciendo un hábito de su inclusión en los nuevos ficheros de cabecera le ahorrará muchos dolores de cabeza más adelante en el camino.
3
Implementar la clase Clock . Abra el archivo clock.cpp , e implementar todas las funciones que ha definido en el archivo de encabezado , escriba lo siguiente :
# include # include # include " reloj. h "
:: Reloj Reloj ( ) { }
int Reloj :: getHours () { time_t segundo = time (NULL ) ; timeinfo retorno; struct tm * timeinfo = localtime ( y segundo ) -> tm_hour ;}
int Reloj :: getMinutes () { time_t segundo = time (NULL ) ; struct tm * timeinfo = localtime ( y segundo ) ; regreso timeinfo -> tm_min ;
< p >}
int Reloj :: getSeconds () { time_t segundo = time (NULL ) ; struct tm * timeinfo = localtime ( y segundo ) ; regreso timeinfo -> tm_sec ;
} < br >
std :: string :: Reloj getTime () { std :: string tiempo ; std :: stringstream cabo , cabo << getHours (); out.str tiempo = (); out.str ("" ) , el tiempo + = " :"; fuera << getMinutes () , el tiempo + = out.str (); out.str ("" ) , el tiempo + = " :"; fuera << getSeconds () , el tiempo + = out.str () , el tiempo de retorno;
}
Comenzando en la parte superior es el constructor , el reloj (). Esta es una clase muy simple, así que no hay necesidad de hacer nada especial aquí , por lo que el constructor se deja vacío.
A continuación son los getHours , minutos y segundos . Estas funciones de recuperar la hora local, medido en segundos , GMT , desde enero de 1970 en la mayoría de las computadoras, la convierte en la estructura tm proporcionada por las bibliotecas de C + + , y finalmente recupera las horas , minutos y segundos de este valor en un ser humano forma legible .
Finalmente , getTime pone estos valores en una cadena con el formato común que separa horas , minutos y segundos por dos puntos.
4
Crear un programa fácil de usar ella. Abra el archivo main.cpp y escribir el siguiente programa en él.
# Include # include " clock.h "
int main (int argc, char * const argv [ ,"] ) { reloj * Reloj despertador = new (); std :: cout reloj -> getTime () << ; return 0 ;}
Este sencillo programa crea un nuevo objeto reloj , obtiene el hora actual del sistema de la misma , y la emite a la salida estándar . Finalmente , devuelve 0 para el sistema operativo, para informar al sistema operativo que el programa se ejecutó correctamente , sin errores .