La función miembro Assign() se usa para las asignaciones, asigna un nuevo valor a la string, reemplazando su contenido actual.
Sintaxis 1: Asigne el valor de string str.
string& string::assign (const string& str) str : is the string to be assigned. Returns : *this
CPP
// CPP code for assign (const string& str) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str1, string str2) { // Assigns str2 to str1 str1.assign(str2); cout << "After assign() : "; cout << str1; } // Driver code int main() { string str1("Hello World!"); string str2("GeeksforGeeks"); cout << "Original String : " << str1 << endl; assignDemo(str1, str2); return 0; }
Producción:
Original String : Hello World! After assign() : GeeksforGeeks
Sintaxis 2: asigna como máximo str_num caracteres de str comenzando con el índice str_idx. Lanza out_of_range si str_idx > str. Talla().
string& string::assign (const string& str, size_type str_idx, size_type str_num) str : is the string to be assigned. str_idx : is the index number in str. str_num : is the number of characters picked from str_idx to assign Return : *this
CPP
// CPP code to illustrate // assign(const string& str, size_type // str_idx, size_type str_num) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str1, string str2) { // Assigns 8 characters from // 5th index of str2 to str1 str1.assign(str2, 5, 8); cout << "After assign() : "; cout << str1; } // Driver code int main() { string str1("Hello World!"); string str2("GeeksforGeeks"); cout << "Original String : " << str1 << endl; assignDemo(str1, str2); return 0; }
Producción:
Original String : Hello World! After assign() : forGeeks
Sintaxis 3: Asigne los caracteres de la string C cstr. Lanza length_error si el tamaño resultante excede el número máximo de caracteres.
string & string::assign (const char* cstr) Assigns all characters of cstr up to but not including '\0'. Returns : *this. Note : that cstr may not be a null pointer (NULL).
CPP
// CPP code for assign (const char* cstr) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str) { // Assigns GeeksforGeeks to str str.assign("GeeksforGeeks"); cout << "After assign() : "; cout << str; } // Driver code int main() { string str("Hello World!"); cout << "Original String : " << str << endl; assignDemo(str); return 0; }
Producción:
Original String : Hello World! After assign() : GeeksforGeeks
Sintaxis 4: Asigna caracteres chars_len de la array de caracteres chars. Lanza length_error si el tamaño resultante excede el número máximo de caracteres.
string& string::assign (const char* chars, size_type chars_len) *chars : is the pointer to the array to be assigned. chars_len : is the number of characters to be assigned from character array. Note : that chars must have at least chars_len characters. Returns : *this.
CPP
// CPP code to illustrate // string& string::assign // (const char* chars, size_type chars_len) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str) { // Assigns first 5 characters of // GeeksforGeeks to str str.assign("GeeksforGeeks", 5); cout << "After assign() : "; cout << str; } // Driver code int main() { string str("Hello World!"); cout << "Original String : " << str << endl; assignDemo(str); return 0; }
Producción:
Original String : Hello World! After assign() : Geeks
Sintaxis 5: asigna números de ocurrencias del carácter c. Lanza length_error si num es igual a string::npos
string & string::assign (size_type num, char c) num : is the number of occurrences to be assigned. c : is the character which is to be assigned repeatedly. Throws length_error if the resulting size exceeds the maximum number(max_size) of characters. Returns : *this.
CPP
// CPP code for string& // string::assign (size_type num, char c) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str) { // Assigns 10 occurrences of 'x' // to str str.assign(10, 'x'); cout << "After assign() : "; cout << str; } // Driver code int main() { string str("#########"); cout << "Original String : " << str << endl; assignDemo(str); return 0; }
Producción:
Original String : ######### After assign() : xxxxxxxxxx
Sintaxis 6: Asigna todos los caracteres del rango [beg, end). Lanza length_error si el rango supera el contenido real de la string.
template <class InputIterator> string& assign (InputIterator first, InputIterator last) first, last : Input iterators to the initial and final positions in a sequence. Returns : *this.
CPP
// CPP code for string& // string::assign (size_type num, char c) #include <iostream> #include <string> using namespace std; // Function to demonstrate assign void assignDemo(string str) { string str1; // Assigns all characters between // str.begin()+6 and str.end()-0 to str1 str1.assign(str.begin()+6, str.end()-0); cout << "After assign() : "; cout << str1; } // Driver code int main() { string str("Hello World!"); cout << "Original String : " << str << endl; assignDemo(str); return 0; }
Producción:
Original String : Hello World! After assign() : World!
Este artículo es una contribución de Sakshi Tiwari . Si le gusta GeeksforGeeks (¡sabemos que le gusta!) y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA