Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Exeil
5 / 5 / 1
Регистрация: 06.12.2010
Сообщений: 50
#1

Передача в функцию обьекта - C++

24.09.2011, 21:37. Просмотров 577. Ответов 4
Метки нет (Все метки)

Всем привет. В интернете ничего не нашел по этому поводу:

Я делаю шашки и у меня есть класс USER и два производных COMPUTER и GAMER. Каждый из производных перегружают функцию Call_Step() у базового.
Нужно после выбора первого и второго игрока передать в функцию два объекта комбинации могут быть разными COMPUTER + GAMER или GAMER + GAMER и т.д. интерфейсы у которых одинаковые. Можно ли как нибудь передавать в функцию как USER а в функции использовать её как GAMER? Это было бы очень удобно.

Может это и глупый вопрос, заранее спс.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2011, 21:37     Передача в функцию обьекта
Посмотрите здесь:

Передача свойств обьекта в функцию openGL - C++
Здравствуйте уважаемые форумчане..Пришел к вам со следующей нуждой: У меня есть класс тайловой карты. При создании карты...

Передача обьекта в функию - C++
Изучаю прогу в универе, понадобилось сделать обьект как аргумент функции.ООП ещё не изучали.Как это сделать можно?Я чисто интуитивно...

Исключительный доступ обьекта к полям другого обьекта avr/c++ - C++
исключительный доступ обьекта к полям другого обьекта avr/c++ добрый день есть два обьекта Data & Math - Data - элемент...

Создать функцию вывода, в которую можно передать обьект, и вывести имя обьекта и все его поля - C++
Создать функцию вывода, в которую можно передать обьект, и вывести имя обьекта и все его поля. Сколько голову не ломал, сколько не...

Передача в функцию - C++
вот есть такие строки кода: typedef vector< vector<char> > string_sound; void sound_func(string_sound &text_sound, int sum_words)...

Передача в функцию - C++
компилятор ругается на int sumcolumn (int **a, int n) sumcolumn(a,m) почему не могу передать массив i*1, таким образом? ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
24.09.2011, 21:53     Передача в функцию обьекта #2
Может я не правильно понял вопрос, но приняв ссылку на родительский класс (которая на самом деле может указывать на любой класс наследник) вы можете вызывать любую вирутальную функцию и она будет вызываться (за счёт виртуальной таблицы) для того наследника, на которого указывает эта ссылка.
Те укажите что функция принимает ссылку на USER,а потом в ней вызывайте нужную виртуальную функцию и в зависимости от того на что указывает USER будет вызываться либо функция COMPUTER либо GAMER.
Exeil
5 / 5 / 1
Регистрация: 06.12.2010
Сообщений: 50
25.09.2011, 19:46  [ТС]     Передача в функцию обьекта #3
увы но после передачи по ссылке в функцию потомка он типизируется в базовый класс и используется не перегруженный потомком метод а базовый
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
25.09.2011, 19:48     Передача в функцию обьекта #4
потому что вы используете не виртуальные методы
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2011, 19:49     Передача в функцию обьекта
Еще ссылки по теме:

Передача строки в функцию - C++
Как передать строку s типа string в функцию?

Передача файла в функцию - C++
Что я делаю не так: #include <iostream> #include <vector> #include <map> #include <string> #include <fstream> #include...

Передача параметров в функцию - C++
Добрый вечер Не получается передать в функцию массив выдает ошибку #include <cstdio> struct morse_code { const char*...

передача массива в функцию - C++
у меня в мейне есть двумерный массив нужно его передать в дургую функцию как это сделать подскажите плиз

Передача функции в функцию? - C++
Здравствуйте. Есть функция: void f (char*) В нее мне нужно записать некоторую строку и числовое значение. int a = 123; ...

Передача аргументов в функцию - C++
Что сработает быстрее? void Func(const A &a = A(0, 0, 0)) { } или void Func(A a = A(0, 0, 0))


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Exeil
5 / 5 / 1
Регистрация: 06.12.2010
Сообщений: 50
25.09.2011, 19:49  [ТС]     Передача в функцию обьекта #5
хм обязательно почитаю про это, надеюсь поможет, спасибо =)
Yandex
Объявления
25.09.2011, 19:49     Передача в функцию обьекта
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru