Maison > Article > développement back-end > Quel est l'équivalent de Rust dans Go ?
L'éditeur php Xigua est là pour répondre à une question qui s'adresse à tout le monde : "Quel est l'équivalent de Rust à ajouter dans Go ?" Rust est un langage de programmation au niveau système, et Go est un langage de programmation concurrent. Dans Rust, l'équivalent fonctionnel de la fonction append dans Go consiste à utiliser la méthode push de type Vec. Vec est un type de tableau dynamique dans la bibliothèque standard Rust. Utilisez la méthode push pour ajouter des éléments à la fin du tableau. Cette fonction est similaire à la fonction append de Go, mais dans Rust, elle doit être implémentée à l'aide de la méthode push de Vec. De cette manière, Rust fournit un moyen simple et flexible de manipuler des tableaux dynamiques.
J'ai essayé de le comprendre en lisant moi-même la documentation mais je n'ai pas eu de chance sur la façon de convertir cette fonction go en rust :
func main() { cards := []string{"ace of diamonds", newcard()} cards = append(cards, "six of spades") fmt.println(cards) } func newcard() string { return "five of diamonds" }
C'est incorrect, au moins le cards.append que je connais est faux :
fn main() { let mut cards: [&str; 2] = ["Ace of Diamonds", new_card()]; let mut additional_card: [&str; 1] = ["Six of Spades"]; cards.append(additional_card); println!("cards") } fn new_card() -> &'static str { "Five of Diamonds" }
Vous ne pouvez pas. Tout comme au Go, les tableaux rust ont une taille fixe.
Tapez [&str; 2]rust 中的
大致相当于 go 中的 [2]string
,但你也不能对其进行 append
.
Dans la rouille, la chose la plus proche à trancher est vec
que vous pouvez utiliser comme ceci :
fn main() { let mut cards = vec!["Ace of Diamonds", new_card()]; let additional_cards: [&str; 2] = ["Six of Spades", "Seven of Clubs"]; // for anything that implements `IntoIterator` of cards cards.extend(additional_cards); // or for a single card only cards.push("Three of Hearts"); println!("{cards:?}") } fn new_card() -> &'static str { "Five of Diamonds" }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!