Скажем, у меня есть два файла .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.
Итак, что мне делать?