&(*_shmItr) == NULL
bu oldukça soru değil, ancak C++ 'ya yeni geldim.Bu geçersiz & (* _ shmItr) == NULL Burada _shmItr bir Liste yineleyici
GCC 3.1.2'de denetlediğinizde _shmItr == NULL gayet iyi, ancak GCC 4.2.2 olarak bu bir hatadır. Hata hakkında google yaptım. Hakaret ve yeniden referanslamanın sorunu çözeceğini söylüyorlar. ve yaptı. Mutluydum. Ama yineleyici hakkında daha fazla şey öğreniyorum. Bu hatayı geçmekte olabileceğini hissediyorum, ancak geçerli değil ve çalışma zamanı problemi verebilir. bana olan öneri ...
Ben biraz araştırma yaptım ve
_shmItr == _shmItr.end()
Ayrıca aynı amaca ve daha doğru hizmet ettiği bulunmuştur nedir. Yanılıyorsam lütfen beni düzeltin. Temel olarak _shmItr'in geçersiz bir şey tutup tutmadığını kontrol etmeye çalışıyoruz. herhangi bir işlem yapmadan önce.
Şimdiden teşekkürler. İşte
kod yığın_shpmtItr = _shpmtList.begin();
if(_shpmtItr == NULL)
{
eaLogMsg << setid("APP_FAILED")
<< "_shpmtItr is NULL in some::few()"
<< endl;
return APP_FAILURE;
}
Bu size senaryo söyleyebilir olduğunu. statik
Yineleyiciler, göstericilerden farklı, daha genel bir kavramdır. Bir yineleyici bir işaretçi olarak uygulanabilir, ancak asla böyle olmaya güvenmemelisiniz. –