Laden...

String benutzen

Erstellt von chrische5 vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.060 Views
c
chrische5 Themenstarter:in
489 Beiträge seit 2007
vor 15 Jahren
String benutzen

Hallo

Zuerst die Frage: Gibt es einen Unterschied zwischen String und string? Wenn ja, worin liegt dieser?

Nun zu meinem Problem. Ich will einen String benutzen und diesen aber erst später mit Zeichen füllen:

String temp = new String();
for(int i=0; i< all_files.Count; ++i)
{
if(back_cover_configs.Show_munbers)
temp = track_strings.All_track_numbers[i] + ". ";
if (back_cover_configs.Show_artist)
temp += track_strings.All_track_artists[i];

graphics.DrawString(temp, font, Brushes.Black, new RectangleF(13, 36 + i * this.space_between_titels, 136, 30), string_format);
}

Das funktioniert so aber nicht, weil es keinen parameterlosen C'tor gibt. In C++ keine Problem, aber in C#bekomme ich es einfach nicht hin. Vielen Dank für die Hilfechrische

4.221 Beiträge seit 2005
vor 15 Jahren

string ist der Alias für String.

Ein String ist immutable... somit kann ein string nicht nachträglich verändert werden.

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

a
254 Beiträge seit 2007
vor 15 Jahren

Hi,

die Tatsache, dass es keinen paramterlosen Konstruktor gibt, liegt wohl daran, dass ein String unveränderlich ist. D.h. wird eine Änderung an einem String vorgenommenn, wird ein neuer String erzeugt. So gesehen macht ein leerer String keinen Sinn.

Tschüss

5.742 Beiträge seit 2007
vor 15 Jahren

Hallo chrische5,

vielleicht ist auch die System.Text.StringBuilder Klasse für dich interessant.

f
171 Beiträge seit 2006
vor 15 Jahren

Hallo chrische5,

  1. ist gibt keinen Unterschied. Der Compiler macht automatisch aus einem string ein System.String. Irgendwo setzt der wahrscheinlich so was: using string = System.String.

  2. Schaue dir mal die Klasse StringBuilder aus System.Text an. Das sollte genau das ein was du benötigst.

Gruß falangkinjau

c
chrische5 Themenstarter:in
489 Beiträge seit 2007
vor 15 Jahren

Hallo

Perfekt. Das war genau das, was ich gesucht hatte. Bei c++ war string eben nicht nur readonly, sondern musste per const erst dazu gemacht werden.

chrische