Скажем, у меня есть два файла .cpp: oranges.cpp и basket.cpp. Они имеют классы orange и basket, соответственно. Моя программа main генерирует много baskets, которые, в свою очередь, генерируют много oranges. В основном, main будет иметь много объектов baskets; и baskets будет иметь много объектов oranges. Если у меня есть функция в orange, которая должна знать цвет моей корзины, как я могу найти цвет корзины?
orangle.cpp
class oranges
{
void whichColorBasket()
{
// get the color of the basket the orange is in...?
}
}
basket.cpp
class basket
{
int color;
void basket()
{
for(int i = 0; i < 10; i++)
oranges *o = new oranges;
}
}
Я знаю, что мой синтаксис может быть не идеальным, но как мне получить доступ к datamember из basket из функции в orange (orange - это объект, созданный basket).
Отправка цвета параметра не является параметром, так как слишком много orange, а цвет basket может меняться во время выполнения.
Я где-то читал, что статические функции будут делать трюк, но они работают только в том случае, если они находятся в одном файле .cpp.
Итак, что мне делать?