Zum Inhalt springen

Strings

Welche Aussage erklärt am besten, warum Rust keine String-Indizierung erlaubt?

Ein UTF-8-String kann als eine Sequenz von Bytes, Zeichen oder Graphem-Clustern interpretiert werden. Keine dieser Interpretationen ist notwendigerweise die „Standard“-Art, einen String zu interpretieren, daher ist eine Standard-Indizierungsoperation nicht sinnvoll.


Welche Aussage beschreibt am besten den Unterschied zwischen den Typen eines String-Slices &str und eines Byte-Slices &[u8]?

&str ist ein Versprechen, dass die Byte-Sequenz, auf die es verweist, immer gültiges UTF-8 sein wird. Daher muss ein Programmierer, der z.B. einen &str ausgeben möchte, nie prüfen, ob er gültig ist, oder sich Sorgen machen, versehentlich einen ungültigen String zu interpretieren.