Передать объект в другой класс
- Войдите на сайт для отправки комментариев
Чт, 12/08/2021 - 22:25
Привет, знаю вопрос тупой, но все таки уже долго туплю. В неком классе A созданы экземпляры другого класса B. Нужно передать созданные экземпляры в класс С . Пробовал передать сеттером но объекты конфликтуют. Как грамотно передать объекты в класс С?
// A.cpp file
#include "A.h"
#include "B.h"
B b1("1");
B b2("2");
B b3("3");
B b4("4");
Что значит "передать"? Скопировать? Переместить? Создать указатель?
В С нет классов.
В любом случае, показывай что ты пробовал, а не непонятно что.
Скопировать да. Из одного пакета cpp в другой пакет cpp. Пробую сейчас передать в функцию но тоже не получается
Button fireButton; Button setButton; void Game::createGame(Button & btn1 , Button & btn2){ fireButton = btn1; setButton = btn2; bird = new Bird(); tube = new Tube(); tp = millis(); Game::flappyBird(); }Кто-то должен что-то понять по этим огрызкам?
Скопировать да.
Если надо скопировать, то нахрена Вы параметры ссылками описали?
void Game::createGame(Button & btn1 , Button & btn2){Во-первых определитесь. что же Вам надо: скопировать, переместить, передать ссылку, передать указатель и т.п. Если (что скорее всего) Вы не слишком уверенно отличаете эти слова одно от другого, то постарайтесь внятно описать своими словами, чего Вам от этого надо.
Во-вторых, по приведённому Вам огрызку ничего сказать нельзя. В одних классах, чтобы скопировать экземпляр ничего делать не нужно, а в других нужен конструктор копирования. У Вас же класс секретный, а потому, единственный ответ Вам - ХЗ.
Запомните, код надо выкладывать полностью (для тормознутых - "п о л н о с т ь ю"), чтобы его можно было просто запустить и посмотреть на проблему. Разумеется, при это он должен быть как можно короче - минимальный, чтобы продемонстрировать проблему - ничего лишнего.