'un ayrıştırma sürümü Ben gömülü bir uygulama yazıyorum ve kullandığım ortam maalesef şu anda C++ 11 desteğine sahip değil.hash_map/unordered_map
Bir karma/sırasız harita (normal std::map
performans nedenleriyle yapmaz) uygulamanız gerekir, ancak temiz bir şekilde yapmanın bir yolunu bulamıyorum.
Boost, tüm kitaplığı pratik olarak getirmeden çalışmak istemez. SGI'den gelen orijinal STL hash_map
bile birkaç başlık istiyor ve standart kütüphane işlevselliğini kopyalar ve belirsiz işlev çağrılarına neden olur. Bu gerçek bir karmaşa.
Uygulama, sürüm oluşturma, kalite denetimi, V & V, vb. Kolaylığı için, gerçekten varolan standart kitaplıktan yararlanan ve tümüyle aynı klasöre yerleştirebileceğim birkaç başlık dosyasında bulunan bir şeye ihtiyacım var. diğer kaynak/başlık dosyaları. Böyle bir şey var mı, yoksa umutsuz muyum? Uzunca bir süredir aradım ama boş ellerde.
Yardımlarınız için çok teşekkürler. Gerektiğinde daha fazla açıklığa kavuşabilirim.
Özel bir ayırıcı ile 'std :: map' kullanmayı denediniz mi? Bu muhtemelen tüm performans sorunlarınızı oraya sabitler. –
Sorun şu ki, sürekli olarak yeni öğeleri haritadan/yerlerinden kaldırıyorum/yerleştiriyorum. Her seferinde bir şeyleri yeniden düzenlemek zorunda kalırsa, çok yavaştır. Bu özel bir ayırıcı ile çözülebilir mi? Benim cehalet için özür dilerim, daha önce hiç bir şey kullanmamıştım ama std :: allocator'. – llakais
Dengelemenin fark edilir bir performans sorununa neden olduğu bir durumum olmadı. Bu durumda _certain_? RB-Tree balansı oldukça hızlı ve sadece ağaç _very_ lopsided olduğunda dengeleniyor. –