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
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...
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
Hallo chrische5,
vielleicht ist auch die System.Text.StringBuilder Klasse für dich interessant.
Hallo chrische5,
ist gibt keinen Unterschied. Der Compiler macht automatisch aus einem string ein System.String. Irgendwo setzt der wahrscheinlich so was: using string = System.String.
Schaue dir mal die Klasse StringBuilder aus System.Text an. Das sollte genau das ein was du benötigst.
Gruß falangkinjau
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