iterator's members should be private and const