Допустим, у меня есть два .cpp файлов: oranges.cpp и basket.cpp . У них есть классы оранжевый
и корзина
соответственно. Моя основная
программа генерирует множество корзин
, которые, в свою очередь, генерируют много апельсинов
. Таким образом, в main
будет много объектов из Baskets
; и корзины
будут содержать много объектов Апельсинов
. Если у меня есть функция в оранжевом
, которой нужно знать цвет моей корзины, как мне найти цвет корзины?
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;
}
}
Я знаю, что мой синтаксис может быть несовершенным, но как мне получить доступ к номеру данных корзины
из функции в оранжевом
( оранжевый
- объект, созданный корзина
).
Отправка параметра цвета не является вариантом, так как имеется слишком много оранжевых
s, а цвет корзины
может измениться во время выполнения.
Я где-то читал, что статические функции могут помочь, но они работают, только если они находятся в одном и том же файле .cpp .
Итак, что мне делать?