string: assign()

powrót

Przeznaczenie

Metoda assign() wypełnia tablicę ustalonym ciągiem znaków. Może go skopiować z innej zmiennej typu string, tablicy znaków lub wypełnić dowolnym znakiem (patrz przykłady). Odwołujemy się do niej za pomocą operatora ".".

Przykład

#include <iostream>
#include <string>
using namespace std;

int main()
{
  string tu_kopiujemy, tekst = "Ala ma kota";

	//skopiowanie całego tekstu
  	tu_kopiujemy.assign(tekst);
  	cout<<tu_kopiujemy<<endl; //Ala ma kota
	
	//kopiujemy 4 znaki począwszy od 7 pozycji
  	tu_kopiujemy.assign(tekst,7,4);
  	cout<<tu_kopiujemy<<endl; //ma kota

	//kopiujemy 6 początkowych znaków
  	tu_kopiujemy.assign(tekst.c_str(),6);
    cout<<tu_kopiujemy<<endl; //Ala ma
	
	//wypełniamy pięcioma znakimi ?
	tu_kopiujemy.assign(5,'?');
	cout<<tu_kopiujemy<<endl; //?????
	
	//kopiujemy bez pierwszego i ostatniego znaku
  	tu_kopiujemy.assign(tekst.begin()+1,tekst.end()-1);
  	cout<<tu_kopiujemy; //la ma kot
  	
  	cin.get();

  	return 0;
} 

 

Wyjście:

Ala ma kota
kota
Ala ma
?????
la ma kot