Patch level : 12.0 no-patch

Files correlati     : include
Commento            : Aggiunte funzioni add_back() e add_front_and_back() per aggiungere dietro una stringa (operatore <<) e aggiungerla davanti e dietro, di base inutili ma il codice è più bello
This commit is contained in:
Mattia Tollari 2019-08-02 11:09:20 +02:00
parent b2e9088be9
commit c3734751d5
2 changed files with 18 additions and 0 deletions

View File

@ -1038,6 +1038,17 @@ TString & TString::add_front(const char * s)
return *this;
}
TString& TString::add_back(const char* s)
{
return operator<<(s);
}
TString& TString::add_front_and_back(const char* front, const char* back)
{
add_front(front);
return add_back(back);
}
// Certified 90%
word TString::hash() const
{

View File

@ -77,6 +77,7 @@ public:
// @cmember Ritorna un riferimento al carattere i-esimo della stringa
char& operator[](int i)
{
CHECKD(i >= 0 && i <= _size, "Bad string subscript: ", i);
CHECKD(i >= 0 && i <= _size, "Bad string subscript: ", i);
return _str[i];
}
@ -161,6 +162,12 @@ public:
TString& insert(const char* s, int pos = 0);
// @cmember Aggiunge la stringa passata davanti
TString& add_front(const char* s);
// @cmember Aggiunge la stringa passata dietro, sta funzione non serve a un tubo, solo per rendere più bello il codice se chiamata con add_front
TString& add_back(const char* s);
// @cmember Aggiunge la prima stringa passata davanti e la seconda dietro
TString& add_front_and_back(const char * front, const char* back);
// @cmember Aggiunge la stringa passata davanti e dietro
TString& add_front_and_back(const char * s) { return add_front_and_back(s, s); }
// @cmember Elimina tutti i caratteri contenuti in k
TString& strip(const char* k);