«rust» etiketlenmiş sorular

Rust, üç hedefe odaklanan çöp toplayıcısız bir sistem programlama dilidir: güvenlik, hız ve eşzamanlılık. Rust ile yazılmış kod hakkında sorularınız için bu etiketi kullanın. [Rust-2018] gibi belirli bir sürüm gerektiren kodla ilgili sorular için baskıya özel bir etiket kullanın. [Rust-cargo] ve [rust-macro'lar] gibi alt konular için daha spesifik etiketler kullanın.

3
Cargo ile nasıl birden fazla ikili dosya oluşturabilirim?
A daemonve a clientile bir unix soketi üzerinden bağlanan bir proje yapmak istiyorum . A clientve a daemoniki ikili program gerektirir, peki Cargoiki farklı kaynaktan iki hedef oluşturmayı nasıl anlarım ? Biraz fantezi eklemek libraryiçin, ana bölüm için bir tane istiyorum daemonve sadece onu sarmak ve soketler aracılığıyla iletişim kurmak …
94 rust  rust-cargo 

2
Tek bir kesme işaretiyle gösterilen Rust türleri nelerdir?
Rust'ta tek bir kesme işaretiyle gösterilen birkaç türle karşılaştım: 'static 'r 'a Bu kesme işaretinin önemi nedir? Belki bir referans değiştiricisi ( &)? Referanslara özgü genel tipleme? Bunun belgelerinin nerede saklandığı hakkında hiçbir fikrim yok.
94 rust 

1
Bir tamsayıdan dizeye nasıl dönüştürebilirim?
Bir türü tam sayıdan dizeye dönüştüren kodu derleyemiyorum. Rust for Rubyists eğitiminden çeşitli tür dönüşümleri olan bir örnek çalıştırıyorum, örneğin : "Fizz".to_str()ve num.to_str()(nerede numbir tam sayıdır). Sanırım bu to_str()işlev çağrılarının çoğu (hepsi değilse de) kullanımdan kaldırıldı. Bir tamsayıyı dizeye dönüştürmenin şu anki yolu nedir? Aldığım hatalar: error: type `&'static str` …

1
Sözcük dışı yaşamlar nelerdir?
Rust, uzun süre dilde uygulanması onaylanmış, sözcüksel olmayan yaşamlarla ilgili bir RFC'ye sahiptir . Son zamanlarda , Rust'un bu özelliğe verdiği destek çok gelişti ve tamamlanmış kabul ediliyor. Sorum şu: sözcüksel olmayan bir yaşam tam olarak nedir?


4
Modül dosyalarında bir makroyu nasıl kullanabilirim?
Aynı sandık içinde, kasanın macro_rulesetkinleştirildiği ayrı dosyalarda iki modülüm var . Bir modülde tanımlanan makroları başka bir modülde kullanmak istiyorum. // macros.rs #[macro_export] // or not? is ineffectual for this, afaik macro_rules! my_macro(...) // something.rs use macros; // use macros::my_macro; <-- unresolved import (for obvious reasons) my_macro!() // <-- how? …

1
Rust'ta "şişman işaretçi" nedir?
"Şişman işaretçi" terimini zaten çeşitli bağlamlarda okudum, ancak tam olarak ne anlama geldiğinden ve Rust'ta ne zaman kullanıldığından emin değilim. İşaretçi, normal bir işaretçiden iki kat daha büyük görünüyor, ancak nedenini anlamıyorum. Aynı zamanda özel nesnelerle bir ilgisi var gibi görünüyor.
91 pointers  rust 

9
Neden benzersiz anonim türlere sahip bir dil tasarlayasınız?
Bu, beni her zaman C ++ lambda ifadelerinin bir özelliği olarak rahatsız eden bir şeydir: Bir C ++ lambda ifadesinin türü benzersiz ve anonimdir, basitçe yazamam. Sözdizimsel olarak tamamen aynı olan iki lambda oluştursam bile, ortaya çıkan türler farklı olarak tanımlanır. Sonuç şudur: a) lambdalar yalnızca derleme zamanına, konuşulamayan türün …


1
Rust'da “temel tip” nedir?
Bir yerde "temel tip" (ve onun niteliği #[fundamental]) terimini aldım ve şimdi bu konuda daha fazla bilgi edinmek istedim. Bazı durumlarda tutarlılık kurallarını rahatlatmakla ilgili belirsiz bir şekilde hatırlıyorum. Bence referans türleri böyle temel türler. Ne yazık ki, web'de arama yapmak beni çok ileriye götürmedi. Rust referansından bahsetmiyorum (görebildiğim kadarıyla). …
37 rust 



2
`Std :: mem :: drop` neden üst sıra özellik sınırlarındaki kapatma | _ | () ile tam olarak aynı değil?
Uygulamasının std::mem::dropaşağıdaki gibi belgelenmiştir: pub fn drop<T>(_x: T) { } Bu nedenle, kapamanın |_| ()(konuşma dilinde tuvalet kapağı olarak bilinir ) dropher iki yönde de potansiyel bir 1: 1 değiştirme olmasını beklerim. Bununla birlikte, aşağıdaki kod drop, işlevin parametresine bağlı daha yüksek sıralı bir özellikle uyumlu olmadığını gösterirken , tuvalet …

4
İlişkili bir türü, daha üst sıralarda yer alan bir özellik bağlantılı özellikten nasıl döndürürüm?
İlişkili bir türün serileştirilmesi için bir işlevi olan bir özelliği var. Bununla birlikte, ilişkili tür, arayanın karar vereceği bir ömre sahip olmalıdır, bu nedenle, herhangi bir ömür boyu serileştirilebilmesi için bağlı bir üst düzey özellik kullandığım ayrı bir özelliğe sahibim. Bu ilişkili türü döndüren bir kapatma kullanmanız gerekir. Bunu yapmak …

1
Rust'daki bir haritaya nasıl zaman uyumsuzluk işlevi koyabilirim?
İçin zaman uyumsuz yönlendirici yazarken zaman uyumsuz işlevleri işleyemiyorum hyper. Bu kod: use std::collections::HashMap; use std::future::Future; type BoxedResult<T> = Result<T, Box<dyn std::error::Error + Send + Sync>>; type CalcFn = Box<dyn Fn(i32, i32) -> dyn Future<Output = BoxedResult<i32>>>; async fn add(a: i32, b: i32) -> BoxedResult<i32> { Ok(a + b) } …
11 rust  async-await 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.