Yineleyici uygulamasının bazı bileşenlerini gizlemek için iterator_facade'ı kullanmayı öğreniyorum. Geçerli kullanım durumumda başka bir kapsayıcıyı (.NET kodundan, aslında) silerim, böylece begin(), end(), typedefs, vb.) Gerekir. En azından sonuç türünün BOOST_FOREACH ile çalışmasını istiyorum. Bunu basitleştirmek için uygun bir şey var mı?Boost'ta bir konteyner cephesi var mı?
7
A
cevap
3
boost::iterator_range
numaralı belgede verilen kapsayıcıdan bir çift yineleyiciyi Boost.Range kitaplığından dolduracağım.
"Verilen" kapsayıcı nedir? Sardığım bir .NET kabı. –
Bu, tüm "begin", "end", "typedef's n" öğelerinde yardımcı olmaz. Iterator_facade'ye bir göz atın, yineleyicilerin uygulanmasını kolaylaştırır * büyük ölçüde *. – Xeo
@Xeo: Bağlantılı sınıf özeti, "typ" ve "end" nin yanı sıra söz konusu typedeflerin uygulamalarını açıkça gösterir. – ildjarn