예제 #1
0
파일: a84.cpp 프로젝트: niklada/AufgabenCPP
int main(){
  MeinString h("Haallllooooooo");
  MeinString b;
  b=h;
  cout<<(b.c_str())<<endl;
  cout<<b[1]<<endl;
  cout<<b<<endl;
}
예제 #2
0
int main() {
   MeinString einString("Hallo");
   anzeigen(cout, einString);
   cout << endl;

   // Zuweisen
   MeinString zweiterString;
   zweiterString.reserve(20);
   zweiterString.assign(einString); // dank reserve() kein new erforderlich
   cout << "zugewiesener String: ";
   anzeigen(cout, zweiterString);
   cout << endl;

   cout << "zweiterString.length() : "   << zweiterString.length()   << endl;
   cout << "zweiterString.capacity() : " << zweiterString.capacity() << endl;
   cout << "nach shrink_to_fit(): " << endl;
   zweiterString.shrink_to_fit();
   cout << "zweiterString.length() : " << zweiterString.length() << endl;
   cout << "zweiterString.capacity() : " << zweiterString.capacity() << endl;

   einString.insert(5, " MASE");
   einString.insert(8, "T");
   anzeigen(cout, einString);
   cout << endl;
}
예제 #3
0
파일: main.cpp 프로젝트: AnarNFT/books-code
int main() {
   MeinString einString("Hallo");
   anzeigen(cout, einString);
   cout << "\nzeichenweise Ausgabe:\n";
   for(size_t i = 0; i < einString.length(); ++i)
      cout << '*' << einString.at(i);
   cout << '*' << endl;
   // Zuweisen
   MeinString zweiterString;
   zweiterString.assign(einString);
   cout << "zugewiesener String: ";
   anzeigen(cout, zweiterString);
   cout << endl;
   // Wird vom Compiler akzeptiert, ist aber falsch:
   zweiterString = einString;
   // weil noch kein eigener Zuweisungsoperator existiert (s. Text)
}
예제 #4
0
파일: main.cpp 프로젝트: AnarNFT/books-code
int main() {
   MeinString einString("Hallo");
   anzeigen(cout, einString);
   // Zuweisen
   MeinString zweiterString;
   zweiterString.reserve(20);

   zweiterString.assign(einString); // dank reserve() kein new erforderlich
   cout << "\n zugewiesener String: ";
   anzeigen(cout, zweiterString);
   cout << endl;
   cout << "zweiterString.length() : " << zweiterString.length() << endl;
   cout << "zweiterString.capacity() : " << zweiterString.capacity() << endl;
   cout << "nach shrink_to_fit(): " << endl;
   zweiterString.shrink_to_fit();
   cout << "zweiterString.length() : " << zweiterString.length() << endl;
   cout << "zweiterString.capacity() : " << zweiterString.capacity() << endl;
   // Wird vom Compiler akzeptiert, ist aber falsch:
   //zweiterString = einString;
   // weil noch kein eigener Zuweisungsoperator existiert (s. Text)
}
예제 #5
0
void anzeigen(std::ostream& os, const MeinString& m)  {// Version 2
        os << m.c_str();
}
예제 #6
0
void  MeinString::verketten(const MeinString& a, const MeinString& b) {
   reserve_only(a.len + b.len); // neuen Platz beschaffen
   strcpy(start, a.c_str());             // Teil 1 kopieren
   strcpy(start + a.len, b.start);  // Teil 2 kopieren
   len = a.len + b.len;
}