2016-04-01 17 views
0

Amacım bir singleton yaratmaktı, ancak bunu Rust'ta nasıl kullanacağımı bilmiyordum, this ve this'u okudum, ancak basit bir singleton yaratmanın bir yolu olup olmadığından emin değilsiniz çünkü bir "değişebilir tekil" kelimesinden bahsediyor ve Bir "güvenli-statik-singleton" diğeri.Basit bir temel singleton nasıl oluşturabilirim?

+0

Bu soruya şunu sordum çünkü önceki bölümde iyi bir açıklama yapmadı ve zaten bir cevabı var, bu yüzden bunu yapıp diğerinin güncellemesini sil, cevabı kabul etmeden güncellemeyi kabul et –

+0

Basit cevap şöyle olurdu: . Singleton kullanmak neredeyse hiç iyi bir fikir değildir. – Hauleth

+0

Lütfen * ne yapmak istediğinizi * tekille tanımlayın. Eğer bir şeyi mutasyona uğratmıyorsanız, başka seçenekler de vardır. – Shepmaster

cevap

4

Tekil, yalnızca tembel olarak başlatılmış bir statik veri parçasıdır. Bu gerçekten lazy-static'u istediğiniz anlamına gelir. Bir static ref NAME: TYPE = EXPR; verilen İçin

, makro adı NAME ile statik içinde Deref<TYPE> ve saklar uygulayan benzersiz bir tipini oluşturduğu

Not. NAME demektir

"tekil" nin yapıcı aslında benzer olduğunu ve &*NAME "tekil" kendisidir.

İlgili konular