class stuff{ int id; int ammount; int quality; /*...*/ };
demek ve ben vector<stuff> items
var. Ben staff::id
benim toplama stuff::id
olarak sıralanabilir ve aranabilir yapmak istiyorum. Find_if ile yapabilirdim ve bazı özel stl lambda tabanlı fonksiyon kullanarak sıralayabilirim. Yine de tüm bunları varsayılan olarak vektöre sahip olmak istiyorum. Ben Peki varsayılan vektör fonksiyonları ile vektör içine sınıf/sıralanabilir aranabilir hale getirmek için ... ama ben bulamadım her yerinde arandı karma işlevi oluşturmak için bazı yol var duydu? sıralama içinVektörün içinde sınıfın nasıl sıralanabilir hale getirilmesi gerekir? Bir sınıf olması
5
A
cevap
6
, iki yapılarını karşılaştıran bir operator<
uygulamak:
bool operator<(const stuff& s1, const stuff& s2)
{
// Your comparison here
}
Bu, tüm sıralama çoğu için varsayılan olarak kullanılır operatörüdür.
eşitlik denetimi için benzer bir operator==
oluşturun.
İlgili konular
- 1. Haskell'de fonksiyonların seri hale getirilmesi
- 2. Python: Standart sözdizimini kullanarak bir sınıfın yinelenebilir hale getirilmesi mümkün mü?
- 3. JavaScript doğru olması gerekir
- 4. Android'e eşdeğer olması gerekir AudioInputStream
- 5. Açısal 2.0 - söz zincirinin Gözlemlenebilir hale getirilmesi
- 6. Bir sınıf olması
- 7. SQL CE verilerinin XML'ye seri hale getirilmesi
- 8. Koyu renklerin parlak hale getirilmesi javada parlak
- 9. Visual 2010, "hata: İfadenin sınıf tipinde olması gerekir" yazıyor "
- 10. Niteliklere sahip bir listenin XML seri hale getirilmesi
- 11. Bir bit alanının seri hale getirilmesi ve serileştirilmesi
- 12. Bir algoritmanın paralel hale getirilmesi gereken bazı ipuçları nelerdir?
- 13. .php dosyalarının .php uzantılı olması gerekir mi?
- 14. XML İsteğe bağlı özniteliklerin varsayılan değerlerinin seri hale getirilmesi
- 15. Bir sınıfın logger'ını statik bir bağlamda nasıl alabilirim?
- 16. https sayfasındaki hangi URL’lerin https olması gerekir?
- 17. Boost.Python: "TypeError: Öznitelik adının dize olması gerekir"
- 18. Süper sınıf üzerinden seri hale getirme/serileştirme
- 19. çözümü, HTML şablonunun istemci tarafından düzenlenebilir hale getirilmesi
- 20. Koroutinli seri hale getirilebilir sınıf?
- 21. UIiutton UIView içinde nasıl sürüklenebilir hale getirilir?
- 22. Başka bir java.lang.IllegalArgumentException: parametresinin bu görünümün bir soyundan olması gerekir
- 23. PHP: Başka bir sınıfın içinden argümanlarla bir sınıf nasıl oluşturulur
- 24. konstrüktör sınıfın sınıf adını alma
- 25. nasıl sınıf değişkenleri bir demet yapmak gerekir dinamik piton
- 26. Bir sınıfın örneklerini sayma?
- 27. Bir sınıf içinde bir sınıf yönteminin çağrılması
- 28. Bir vektörün içeriğini basamıyorum?
- 29. java.lang.IllegalStateException: Action Çubuğunun bir Geri Çağırma olması gerekir
- 30. JUnit'teki @Rule açıklamalı alanların neden herkese açık olması gerekir?
'id malzeme :: operatörü tanımlayın. –
Bunun yerine std :: map 'yi kullanabilir misiniz? Burada –
Nawaz
Nokta 'tüm benim iş mantığı ile tanımlanan sınıfı tarafından temel konteynerler için arama yapması için,' çifti :: first' map' olarak da benim sınıfını kullanın edebilmek için gibi işlemler nasıl elde etmektir - Genel değil ints ve Teller. – DuckQueen