Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
5 / 4 / 1
Регистрация: 24.02.2022
Сообщений: 88

Передача класса как аргумент в функцию

10.04.2023, 09:06. Показов 839. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У есть вопрос как передать функцию сам класс
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.04.2023, 09:06
Ответы с готовыми решениями:

Что происходит когда передается в функцию базового класса аргумент с типом производного класса?
Есть функция перегруженного оператора"+" в производном классе и в базовом классе который принимает свой тип(базового класса) что...

Написать функцию нахождения цифрового корня натурального числа, которое передается в функцию как аргумент (аргумент може
Написать функцию нахождения цифрового корня натурального числа, которое передается в функцию как аргумент (аргумент может быть в...

Передача функции (как параметра) в функцию унаследоваемого класса
Доброго времени суток. Есть класс (в моем случае это Sprite) и я создаю произвольный класс (например Game : public Sprite). У меня есть в...

7
фрилансер
 Аватар для Алексей1153
6473 / 5694 / 1131
Регистрация: 11.10.2019
Сообщений: 15,173
10.04.2023, 09:10
Tih18, класс нельзя передать как аргумент в функцию. Или речь про шаблон ?

Добавлено через 1 минуту
наверное, речь про экземпляр класса:

C++
1
2
3
4
5
6
7
class MyClass
{
};
 
void func(MyClass c)//аргумент передаётся по значению
{
}
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
10.04.2023, 12:40
Лучший ответ Сообщение было отмечено Tih18 как решение

Решение

Цитата Сообщение от Tih18 Посмотреть сообщение
Передача класса как аргумент в функцию
Можно как аргумент шаблона.
C++
1
2
3
4
5
template<class TClass>
void foo(){
   TClass obj; 
   //...
}
0
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
11.04.2023, 10:20
Цитата Сообщение от Tih18 Посмотреть сообщение
передать в функцию сам класс
С++ так не умеет. (хотя, вот есть же RTTI в C++ вроде, там тоже так нельзя?)
А вот Delphi - умеет. Я всегда говорю: Delphi круче!
0
Модератор
 Аватар для Curry
5158 / 3494 / 536
Регистрация: 01.06.2013
Сообщений: 7,592
Записей в блоге: 9
11.04.2023, 11:04
Если класс хочется передать в функцию чтобы в функции создавать экземпляры класса наследуемого от какого то объекта, то см. шаблон фабрика.

Не по теме:

Цитата Сообщение от KSergey9 Посмотреть сообщение
А вот Delphi - умеет.
В делфи компилятор, по сути, к каждому классу генерирует фабрику добавляя к имени класса Class.

0
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
11.04.2023, 12:01
Цитата Сообщение от Curry Посмотреть сообщение
то см. шаблон фабрика.
По ссылке нет ответа на вопрос
Цитата Сообщение от Tih18 Посмотреть сообщение
как передать функцию сам класс
Это ж самое интересное.
0
Модератор
 Аватар для Curry
5158 / 3494 / 536
Регистрация: 01.06.2013
Сообщений: 7,592
Записей в блоге: 9
11.04.2023, 12:12
Цитата Сообщение от KSergey9 Посмотреть сообщение
По ссылке нет ответа на вопрос
Здесь уже ответили что сам класс на С++ передать нельзя. Дальше задаёмся вопросом, зачем нужно передавать класс? Наверное что бы создавать экземпляры класса в этой функции. В шаблоне фабрика создаются фабрики, их экземпляры передаются в функцию и с помощью них создаются уже экземпляры требуемых классов.
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
11.04.2023, 13:08
Как обычно, на самом деле ТС нужно рассказать нам что за задачу он решает, а не каким способом он думает ее решить.
https://en.wikipedia.org/wiki/XY_problem
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.04.2023, 13:08
Помогаю со студенческими работами здесь

Передача переменной из функции одного класса в функцию другого класса
Постараюсь вкратце доложить суть того, что должно происходить в программе, и с чем я столкнулся. В главном окне программы есть кнопка...

Написать функцию - обёртку, принимающую в качестве аргумента функцию int (*)(int) и аргумент, и хранящую предыдущий аргумент и возвращаемый результат
помогите пожалуйста с программой. как реализовать это на Си и что за функция обёртка?

Передача значения класса в функцию внутри класса
Всем привет. Вот столкнулся с таким вопросом Как передать значение класса в функцию внутри класса? вопрос не понятный попробую обьяснить...

получение ссылки на функцию из класса шаблона и передача ее как параметр шаблона
Доброго времени суток! Получилась вот такая странная проблема, хотя не понимаю почему в С++ возникают ошибки в таком случае Код: ...

Передача объекта как аргумент функции
В функцию аргумент можно передавать разными способами, но бывает что возникает ошибка. Хочу прояснить ситуацию как правильно передавать в...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru