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

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

Войти
Регистрация
Восстановить пароль
 
GysevVlad
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 13
#1

Методы и конструкторы класса - C++

24.02.2014, 00:06. Просмотров 283. Ответов 7
Метки нет (Все метки)

Добрый день)

Предположим, имеется некоторый класс "Tfunction" представляющий математическую функцию.
Интерфейс этого класса хотелось бы видеть таким:
...
Tfunction g("x^3+2*x");
cout<<g(x);
...
Собственно вопрос, возможно ли организовать такой интерфейс?
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.02.2014, 00:54     Методы и конструкторы класса #2
Цитата Сообщение от GysevVlad Посмотреть сообщение
Собственно вопрос, возможно ли организовать такой интерфейс?
собственно ответ: возможно.
GysevVlad
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 13
24.02.2014, 01:03  [ТС]     Методы и конструкторы класса #3
metaluga145, а каким образом реализуется обращение к методу класса по имени экземпляра?
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.02.2014, 01:06     Методы и конструкторы класса #4
GysevVlad, не понял вопрос.
предполагаемый ответ:
C++
1
2
MyClass a;
a.methodOfMyClass();
GysevVlad
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 13
24.02.2014, 01:14  [ТС]     Методы и конструкторы класса #5
metaluga145, нет. Если бы всё было так просто, я бы не писал сюда.

Мне интересно узнать, возможно ли обращаться к некоторому методу класса по имени экземпляра этого класса. Поясняю:
C++
1
2
3
4
...
Tfunction f(temp1), g(temp2); //Tfunction - класс, temp1 и temp2 - какие-то параметры инициализации
cout<<f(x)<<g(x);             //Подразумевается вызов метода вычисления значения, определённый в классе, но вызывается он по имени экземпляра функции.
...
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
24.02.2014, 01:18     Методы и конструкторы класса #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
GysevVlad, можно так сделать. для этого надо перегрузить оператор (), который будет возвращать какое-то числовое(ну или любое другое) значение.
GysevVlad
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 13
24.02.2014, 01:23  [ТС]     Методы и конструкторы класса #7
metaluga145, точно) Вы правы!

Вопрос решен.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2014, 12:44     Методы и конструкторы класса
Еще ссылки по теме:

Спроектировать класс Множество реализовав конструкторы и соответствующие методы C++
C++ Конструкторы класса Time
Написать класс «массив» (В классе реализовать следующие методы: конструкторы (по умолчанию, с параметрами,) C++
C++ Конструкторы и деструктор класса BigInteger
Где создаются конструкторы класса? C++

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

Или воспользуйтесь поиском по форуму:
castaway
Эксперт С++
4873 / 3012 / 370
Регистрация: 10.11.2010
Сообщений: 11,062
Записей в блоге: 10
Завершенные тесты: 1
24.02.2014, 12:44     Методы и конструкторы класса #8
Это называется функциональный объект или функтор.
Yandex
Объявления
24.02.2014, 12:44     Методы и конструкторы класса
Ответ Создать тему
Опции темы

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