Fast and flexible iterator for abstract class soruyla ilgili yardım ile soyut bir GridData sınıfı için soyut bir GridIterator oluşturdum. Şimdi GridIterator'ın herhangi bir somut alt sınıfını GridData'nın herhangi bir alt sınıfında yinelemek için kullanabiliyorum. Ancak, test sırasında sanal operatör ++ ve sanal operatör * operatörlerinin algoritmaların gerçek darboğazları haline geldiğini öğrendim. Hızlandırmak için yapabileceğim bir şey olup olmadığını merak ediyorum. Soyutlama nedeniyle, inlining muhtemelen benim için çalışmayacak mı?Nesne yönelimli yineleyici sınıfım nasıl hızlandırılır?
Ayrıca bir const yineleyici sağlamak istiyorum. Bu çalışmayı mevcut sınıf tasarımıyla nasıl yapacağımı bilmiyorum. Orijinal sorumu (Fast and flexible iterator for abstract class) referans alarak, sadece bir ConstGridIterator alt sınıf olarak T yerine const T ile bir STL forward iterator oluşturabilir miyim? Ya da her bir yineleyici sınıfının bir const sürümünü (GridIterator ve baseImpl) uygulamak zorunda mıyım?