Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2012, 21:28   #1
zl@dey
 
Регистрация: 20.12.2011
Сообщений: 9
По умолчанию Доступ к полям класса -спискам

Доброго времени суток. Есть два класса:

class Koords
{
public:
int I;
int J;
Koords();
Koords(int i, int j);
virtual ~Koords();
bool operator==(const Koords X);

};


class MyImage
{
friend bool Compare(MyImage m1, MyImage m2);

private:
gdImagePtr im;

...

public:
list<Koords> EndPoint;
list<Koords> BranchPoint;

};

Возникла проблема с friend-функцией: как правильно теперь обратится к этим полям-спискам с помощью итератора? Вот её часть:

bool MyImage::Compare(MyImage m1, MyImage m2)
{
list<Koords>::iterator it;
it=MyImage::BranchPoint.begin();
}

В строке присвивания итератору начала списка возникает ошибка:
error C2228: left of '.begin' must have class/struct/union type
Подскажите, плиз, как быть?

Последний раз редактировалось zl@dey; 30.03.2012 в 22:56.
zl@dey вне форума Ответить с цитированием
Старый 31.03.2012, 04:06   #2
zvoronz
Пользователь
 
Регистрация: 03.01.2011
Сообщений: 49
По умолчанию

К экземплярному полю объекта нужно обращаться по известной ссылке на объект, а не как у вас через имя класса. Через имя класса возможно обращаться только к статическим полям и методам.

Так же дружественная функция не должна описываться как метод принадлежащий данному классу. Дружественность функции будет определятся по имени и списку параметров.

Вот так должна выглядеть ваша функция и обращение к полю BranchPoint

bool Compare(MyImage m1, MyImage m2)
{
list<Koords>::iterator it;
it = m1.BranchPoint.begin();

return true;
}
zvoronz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последовательное обращение к полям класса zigler C# (си шарп) 2 04.03.2012 14:20
доступ к полям GridView Алек Помощь студентам 0 23.12.2011 16:03
Метод присваивающий значения полям класса anlu Общие вопросы C/C++ 7 17.12.2011 21:38
Метод к полям класса; vovunisaev Общие вопросы C/C++ 2 08.04.2009 14:19