let hello1 = "Hello, world!";
let hello2 = "Hello, world!".to_string();
let hello3 = String::from("Hello, world!");
risposta
let hello1 = "Hello, world!";
Questo crea una fetta stringa (&str
). In particolare, un &'static str
, una stringa di sezione che vive per l'intera durata del programma. Nessuna memoria heap è allocata; i dati per la stringa risiedono all'interno del file binario del programma stesso.
let hello2 = "Hello, world!".to_string();
Questo utilizza la macchina per formattare qualsiasi tipo che implementa Display
, creando, stringa allocata proprietà (String
). Nelle versioni di Rust precedenti alla 1.9.0 (in particolare a causa di this commit), questo è più lento della conversione diretta utilizzando String::from
. Nella versione 1.9.0 e successive, chiamare .to_string()
su una stringa letterale ha la stessa velocità di String::from
.
let hello3 = String::from("Hello, world!");
Questo converte una fetta stringa in un, stringa allocata proprietà (String
) in modo efficiente.
let hello4 = "hello, world!".to_owned();
Lo stesso di String::from
.
Consulta anche:
- 1. C# - Qual è la differenza tra questi due modi di istanziare una proprietà di classe?
- 2. Qual è la differenza tra questi due?
- 3. Qual è la differenza tra questi due modi per confrontare i vettori STL?
- 4. Qual è la differenza tra questi LINQ interroga
- 5. Qual è la differenza tra questi metodi di inizializzazione?
- 6. Qual è la differenza tra questi metodi di namespace?
- 7. Java: Qual è la differenza tra questi metodi di costruzione
- 8. Qual è la differenza tra questi due esempi di codice?
- 9. Qual è la differenza tra questi metodi attendibili?
- 10. Qual è la differenza tra tutti questi framework audio?
- 11. Qual è la differenza tra questi due modelli JavaScript
- 12. qual è la differenza tra questi due metodi?
- 13. Qual è la differenza tra questi due selettori?
- 14. Qual è la differenza tra questi due selettori usando ": not"?
- 15. Qual è la differenza tra 3/2 e -3/2?
- 16. Qual è la differenza tra l'uso e l'extern?
- 17. qual è la differenza tra [] stringa e ... stringa in golang?
- 18. Qual è la differenza tra questi tre modi di creare un nuovo elenco <string> in C#?
- 19. Definizione dell'oggetto in 2 modi: qual è la differenza?
- 20. Qual è la differenza tra questi due tipi di iniezioni del costruttore in PHP?
- 21. ExtJS 3: Due modi per creare classi personalizzate: qual è la differenza?
- 22. Qual è la differenza tra Dichiarare una variabile (come nuova) e quindi inizializzarla e indirizzarla inizializzandola?
- 23. Qual è la differenza tra = e => per una variabile?
- 24. Qual è la differenza tra npm 3 vs Bower?
- 25. Qual è la differenza tra questi metodi per chiudere la mia domanda?
- 26. F #: In termini reali, qual è la differenza tra una "stringa" e una "opzione stringa"?
- 27. Qual è la differenza tra dict() e {}?
- 28. C'è una differenza tra questi 2 modi di rimuovere un gestore di eventi?
- 29. In TensorFlow, qual è la differenza tra Session.run() e Tensor.eval()?
- 30. differenza tra questi 2 modi per creare una classe in javascript