std::codecvt::length, std::codecvt::do_length
Aus 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. |
<metanoindex/>
<tbody> </tbody>| definiert in Header <locale>
|
||
public: int length( stateT& state, const externT* from, const externT* from_end, std::size_t max ) const |
(1) | |
protected: int do_length( stateT& state, const externT* from, const externT* from_end, std::size_t max ) const |
(2) | |
1)
öffentliche Member-Funktion ruft die Member-Funktion
do_length der am meisten abgeleiteten Klasse .Original:
public member function, calls the member function
do_length of the most derived class.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.
2)
Versuche, die
externT Zeichen aus dem Zeichensatz Array [from, from_end) definiert konvertieren, da anfängliche Wandlungspreis Zustand state auf höchstens max internT Zeichen und gibt die Anzahl der externT Zeichen, die eine solche Umwandlung würde verbrauchen. Ändert state, als ob durch die Ausführung do_in(state, from, from_end, from, to, to+max, to) für einige imaginäre [to, to+max) Ausgabepuffer .Original:
attempts to convert the
externT characters from the character array defined by [from, from_end), given initial conversion state state, to at most max internT characters, and returns the number of externT characters that such conversion would consume. Modifies state as if by executing do_in(state, from, from_end, from, to, to+max, to) for some imaginary [to, to+max) output buffer.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.
Rückgabewert
Die Zahl der
externT Zeichen, die verbraucht, wenn durch do_in() umgewandelt werden, bis entweder alle from_end-from Zeichen wurden verbraucht oder max internT Charaktere waren Produzent oder ein Konvertierungsfehler eingetreten wäre .Original:
The number of
externT characters that would be consumed if converted by do_in() until either all from_end-from characters were consumed or max internT characters were producer, or a conversion error occurred.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.
Die nicht-Converting-Spezialisierung
std::codecvt<char, char, std::mbstate_t> kehrt std::min(max, from_end-from)Original:
The non-converting specialization
std::codecvt<char, char, std::mbstate_t> returns std::min(max, from_end-from)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.
Beispiel
#include <locale>
#include <string>
#include <iostream>
int main()
{
// narrow multibyte encoding
std::string s = "z\u00df\u6c34\U0001d10b"; // or u8"zß水𝄋"
// or "\x7a\xc3\x9f\xe6\xb0\xb4\xf0\x9d\x84\x8b";
std::mbstate_t mb = std::mbstate_t();
std::cout << "Only the first " <<
std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t>>(
std::locale("en_US.utf8")
).length(mb, &s[0], &s[s.size()], 2)
<< " bytes out of " << s.size() << " would be consumed "
" to produce the first 2 characters\n";
}
Output:
Only the first 3 bytes out of 10 would be consumed to produce the first 2 characters
Siehe auch
[virtuell] |
wandelt eine Zeichenkette aus externT um Internt wie beim Lesen aus Datei Original: converts a string from externT to internT, such as when reading from file The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (virtuellen geschützten Member-Funktion) |