std::ios_base::iword
De cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| long& iword( int index ); |
||
En primer lugar, asigna o cambia el tamaño del almacenamiento privado (matriz dinámica de long u otra estructura de datos indexable) lo suficiente para hacer
index un índice válido, devuelve una referencia al elemento long del almacenamiento privado con el índice index . Original:
First, allocates or resizes the private storage (dynamic array of long or another indexable data structure) sufficiently to make
index a valid index, then returns a reference to the long element of the private storage with the index index. The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
La referencia puede ser invalidado por cualquier operación en este objeto
ios_base, incluyendo otra llamada a iword(), pero los valores almacenados se mantienen, por lo que la lectura de iword(index) con el mismo índice después producirá el mismo valor (hasta la siguiente llamada a copyfmt()). El valor puede ser utilizado para cualquier propósito. El índice del elemento debe ser obtenido por xalloc(), de lo contrario las colisiones con otros usuarios de este ios_base puede ocurrir. Los nuevos elementos se inicializan en 0 .Original:
The reference may be invalidated by any operation on this
ios_base object, including another call to iword(), but the stored values are retained, so that reading from iword(index) with the same index later will produce the same value (until the next call to copyfmt()). The value can be used for any purpose. The index of the element must be obtained by xalloc(), otherwise collisions with other users of this ios_base may occur. New elements are initialized to 0.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Si la asignación de falla, llama std::basic_ios<>::setstate(badbit) que puede std::basic_ios::failure tiro
Original:
If allocation fails, calls std::basic_ios<>::setstate(badbit) which may throw std::basic_ios::failure
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Contenido |
[editar] Notas
El uso típico de almacenamiento iword es transmitir información (por ejemplo, banderas de formato personalizadas) definidas por el usuario de E / S para los manipuladores definidos por el usuario y
operator<< operator>> o definida por el usuario facetas de formato imbuidos en flujos estándares .Original:
Typical use of iword storage is to pass information (e.g. custom formatting flags) from user-defined I/O manipulators to user-defined
operator<< and operator>> or to user-defined formatting facets imbued into standard streams.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar] Parámetros
| index | - | índice de valor del elemento
Original: index value of the element The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[editar] Valor de retorno
referencia al elemento
Original:
reference to the element
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar] Excepciones
Puede lanzar std::ios_base::failure al ajustar el badbit .
Original:
May throw std::ios_base::failure when setting the badbit.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar] Ejemplo
#include <iostream> #include <string> struct Foo { static int foo_xalloc; std::string data; Foo(const std::string& s) : data(s) {} }; // allocates the iword storage for use with Foo objects int Foo::foo_xalloc = std::ios_base::xalloc(); // This user-defined operator<< prints the string in reverse if the iword holds 1 std::ostream& operator<<(std::ostream& os, Foo& f) { if(os.iword(Foo::foo_xalloc) == 1) return os << std::string(f.data.rbegin(), f.data.rend()); else return os << f.data; } // This I/O manipulator flips the number stored in iword between 0 and 1 std::ios_base& rev(std::ios_base& os) { os.iword(Foo::foo_xalloc) = !os.iword(Foo::foo_xalloc); return os; } int main() { Foo f("example"); std::cout << f << '\n' << rev << f << '\n' << rev << f << '\n'; }
Output:
example elpmaxe example
[editar] Ver también
| cambia el tamaño del almacenamiento privado si es necesario y el acceso a la void* elemento en el índice especificado Original: resizes the private storage if necessary and access to the void* element at the given index The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (miembro público función) | |
| [estático] |
devuelve un entero único para todo el programa que es seguro de usar como índice para pword () y iword () Original: returns a program-wide unique integer that is safe to use as index to pword() and iword() The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (miembro estático público función) |