5.
Biblioteca de funciones
En C++,
la biblioteca estándar es
una colección de clases y funciones,
escritas en el núcleo del lenguaje. La biblioteca estándar proporciona varios
contenedores genéricos, funciones para utilizar y manipular esos contenedores,
funciones objeto, cadenas y flujos genéricos (incluyendo E/S interactiva y de
archivos) y soporte para la mayoría de las características del lenguaje. La
biblioteca estándar de C++ también incorpora la biblioteca estándar de C. Las
características de la biblioteca estándar están declaradas en el espacio de nombres std.
La Standard Template Library es un subconjunto de la biblioteca
estándar de C++ que contiene los contenedores, algoritmos, iteradores,
funciones objeto, etc; aunque algunas personas utilizan el término STL
indistintamente con la biblioteca estándar de C++.
Los
archivos de cabecera de la biblioteca estándar de C++ no usan la extensión
«.h».
5.1
Istream
C
++ Biblioteca istream
DESCRIPCIÓN
Se
utiliza para preparar corriente de entrada. Todas las funciones miembro que
realizan una operación de entrada construyen automáticamente un objeto de esta
clase y, a continuación evalúan (which returns true if no
state flag was set) .
Sólo si este objeto se evalúa como verdadera, la función intenta la operación
de entrada (otherwise, it returns
without performing it) .
Antes de regresar, la función destruye el objeto centinela.
DECLARACIÓN
A
continuación se presenta la declaración de std :: :: basic_istream centinela.
C ++ 98
class
sentry {
public:
explicit sentry (basic_istream& is, bool noskipws = false)
;
~sentry() ;
operator bool() const;
private:
sentry (const sentry&) ;
sentry& operator= (const sentry&)
;
};
C ++ 11
class
sentry {
public:
explicit sentry (basic_istream& is, bool noskipws = false)
;
~sentry() ;
explicit operator bool() const;
sentry (const sentry&) = delete;
sentry& operator= (const sentry&)
= delete;
};
miembros
explicit sentry (basic_istream& is,
bool noskipws = false) ; - Prepara el flujo de salida para una operación de salida, la
realización de las acciones descritas anteriormente.
~ sentry() ; - Lleva a cabo ninguna operación (implementation-defined) .
explicit operator bool() const; - Cuando se evalúa el objeto, se devuelve un valor booleano
que indica si el constructor de centinela a cabo con éxito todas sus tareas: Si
en algún momento del proceso de construcción, se estableció un indicadores de
error interno, esta función siempre devuelve false para ese objeto.
EJEMPLO
En
abajo ejemplo explica acerca std :: :: basic_istream centinela.
#include
<iostream>
#include
<string>
#include
<sstream>
#include
<locale>
struct
Phone {
std::string digits;
};
std::istream&
operator>>(std::istream&
is, Phone& tel) {
std::istream::sentry s(is) ;
if (s) while (is.good() ) {
char c = is.get() ;
if (std::isspace(c,is.getloc() )) break;
if (std::isdigit(c,is.getloc() ))
tel.digits+=c;
}
return is;
}
int
main ()
{
std::stringstream parseme (" (555) 2326");
Phone myphone;
parseme >> myphone;
std::cout << "digits parsed: " <<
myphone.digits << '\n';
return
0;
}
Vamos a
compilar y ejecutar el programa anterior, esto producirá el siguiente resultado
-
digits parsed: 5552326
5.2
Iostream
Iostream es
un componente de la biblioteca estándar (STL) del lenguaje de programación C++ que
es utilizado para operaciones de entrada/salida. Su nombre es un acrónimo de Input/Output Stream.
El flujo de entrada y salida de datos en C++ (y su predecesor C) no se
encuentra definida dentro de la sintaxis básica y se provee por medio de
librerías de funciones especializadas como iostream. iostream define los
siguientes objetos:
·
cin : Flujo de entrada (que entra)
·
cout : Flujo de salida (que sale)
·
cerr : Flujo de error no almacenado.
·
clog : Flujo de error almacenado.
Todos los objetos derivados
de iostream hacen parte del espacio de nombres std.
EJEMPLO: El clásico
programa Hola Mundo puede ser expresado en C++
utilizando iostream:
#include <iostream>
// biblioteca que contiene las funciones de entrada y salida de c++ . Viene Input/Output Stream
#include <cstdlib>
using namespace std;
int main()
{
cout << "¡Hola,
mundo!" << endl;
system("pause");
return 0;
}

Comentarios
Publicar un comentario