![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
mezmay |
![]()
Сообщение
#1
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 272 Регистрация: 13.7.2009 Из: Ростов-на-Дону Пользователь №: 904 Спасибо сказали: 16 раз(а) Репутация: ![]() ![]() ![]() |
Проблема такая: хочу создать класс для обработки массивов чисел. Элементами могут быть вещественный или комплексный short, int, float, double. Программа должна работать примерно так: открываю файл, выбираю тип данных (например, комплексный float) и делаю необходимые преобразования массивов. Вопрос: как хранить прочитанный массив в классе? если например создать поле void *data и после открытия делать myObject.data = new scplx[n]; - то как передавать тип в методы? можно конечно создать enum types{ INT, FLOAT, ...} и в каждом методе делать switch (TYPE){ case INT: ..... case FLOAT: ...} но так слишком много case'ов придется везде вставлять. Есть ли какое-то нормальное решение этой проблемы?
вроде бы для подобных целей существуют шаблоны, но опять же - как задать шаблону тип во время выполения? |
|
|
![]() |
D_K |
![]()
Сообщение
#2
|
Студент ![]() Группа: Участник Сообщений: 20 Регистрация: 20.5.2009 Пользователь №: 761 Спасибо сказали: 3 раз(а) Репутация: ![]() ![]() ![]() |
mezmay, а как собираешься использовать сие творение? Можно псевдокодом. От этого многое зависит.
Перед тем, как разбираться в том, как делать, нужно понять что конкретно ты хочешь сделать ![]() Я сейчас ее читаю. Книга полезная, интересная, но читать немного сложновато. Говорят, что читать ее проще, если знаешь функциональные языки программирования. Так списки типов и есть, фактически, функциональное программирование ![]() |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 9:28 |