|
1 / 1 / 1
Регистрация: 24.03.2013
Сообщений: 178
|
|
Что такое обертка функции?19.09.2015, 00:28. Показов 12914. Ответов 40
Метки нет (Все метки)
дана функция на входе получает 2 параметра имя и возраст.
srting children(string ima, int age) Нужно написать обертку, для тестирования входящих параметров. Правильно ли понимаю, что нужно написать функцию допустим test на входе получаем 2 параметра имя и возраст, в данной функции выполняется проходит проверка, что имя не пустая строка, состоящая из символов, без цифр и спец. символов, возраст не отрицательное число. bool test(string ima, int age) На выходе true/false подходит ли данный набор для функции children. Меня смущает слово ОБЕРТКА, не совсем понимаю значение этого слова, если я не прав - поправьте меня
0
|
|
| 19.09.2015, 00:28 | |
|
Ответы с готовыми решениями:
40
Что такое Функции в C++ Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами? Что такое прототип функции? |
|
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
|
||
| 19.09.2015, 01:43 | ||
|
0
|
||
|
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
|
|
| 19.09.2015, 01:44 | |
|
это Герб Саттер - Решение сложных задач на с++.
Там вроде бы он пишет пишет зачем это надо и в качестве заключения - такая вот рекомендация. Если что-то конкретно непонятно - то велкам. А то можно оттуда скопипастить текст сюда и так же будет непонятно, а лучше него это расписать - это нужно еще суметь. Если у вас та же книга, что и у меня - смотрим на страницу 223 на параграф который начинается с Основные преимущества идимомы скрытой реализации .... Что конкретно из перечисленных пунктов вам не понятно?
0
|
|
|
Неэпический
|
||||||||||||
| 19.09.2015, 01:47 | ||||||||||||
Например, написав так
Вот указатель на внутреннюю структуру частично решает проблему, виден только указатель на какую-то структуру и всё. Это уже больше похоже на инкапсуляцию, конечно, указатель всё-таки виден, но хоть кишки скрыты.
1
|
||||||||||||
|
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
|
||
| 19.09.2015, 01:56 | ||
|
Цель данного подхода - внесение изменений без перекомпиляции проекта. Следовательно раз это так удобно, то все должны реализовывать свои классы именно так. Но почему листая исходники какого нибудь проекта, такое не встречается? Значит есть случаи когда это применимо, а когда нет!?
0
|
||
|
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
|
|
| 19.09.2015, 02:08 | |
|
такой подход чуть менее эффективен и требует чуть большей писанины, в общем есть оверхед определенный. не везде описываемые преимущества актуальны.
Из своего опыта использования: бывает класс с парой тройкой публичных функций, однако для их реализации дохера других приватных писать надо и всяких разных членов разных типов. так вот чтобы не засирать приватными деталями маленький инклудник и чтобы не переключатся между файлами - да, юзаю такую штуку. По типу как в Java или в C# - мне удобно пилить класс и прям в нем реализовывать функции. С сокращением времени пересборки или там с обеспечением какой-то бинарной совместимости дел не имел.
1
|
|
|
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
|
||||||||
| 19.09.2015, 02:09 | ||||||||
|
Искал для тебя ссылку в подтверждение и случайно нашел вот такую статью. Думаю будет полезно. Там еще первая часть есть. Еще такое традиционно встречается в хороших С библиотеках. Функция, например, инициализации возвращает дескриптор-указатель, который объявлен как указатель на неполный тип. Например так:
Каждый раз надо думать головой, выбирая то или иное решение, исходя из насущных потребностей и задач проекта.
2
|
||||||||
| 19.09.2015, 02:21 | |
|
Не по теме: Действительно интересные и сложные темы содержат пару ответов и всё, а вот такие по сути простые и бесполезные растягиваются аж на несколько страниц. И так практически всегда :(
0
|
|
|
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
|
|
| 19.09.2015, 02:28 | |
|
до кучи по теме Pimpl вспомнилось описание паттерна Bridge в Паттернах проектирования от GoF (http://www.ozon.ru/context/detail/id/2457392/). Посмотрите что они пишут, увидите теперь уже знакомые вещи + дополнительные кейсы применения
такого подхода.
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|||
| 19.09.2015, 04:23 | |||
|
0
|
|||
|
Неэпический
|
|||
| 19.09.2015, 04:25 | |||
|
И это будет отражено в документации. Добавлено через 30 секунд
0
|
|||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||
| 19.09.2015, 04:31 | ||||
|
Добавлено через 4 минуты
0
|
||||
|
Неэпический
|
|||
| 19.09.2015, 04:36 | |||
|
0
|
|||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|||
| 19.09.2015, 04:48 | |||
|
0
|
|||
|
Неэпический
|
||||
| 19.09.2015, 04:55 | ||||
0
|
||||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.09.2015, 05:10 | ||
|
К тому же, если у нас таких функций миллион, то мы про каждую должны будем помнить что она выдает в случае ошибки. О, что-то и у меня какие-то зависания форума начались.
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.09.2015, 05:31 | ||
|
0
|
||
|
Неэпический
|
|||||||
| 19.09.2015, 06:13 | |||||||
0
|
|||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||
| 19.09.2015, 11:20 | |||||
|
для сокрытия платформо-специфичных зависимостей. что делает клиентский код кросс-платформенным. Добавлено через 1 минуту Добавлено через 3 минуты Добавлено через 1 минуту
0
|
|||||
| 19.09.2015, 11:20 | |
|
Что такое ссылки на функции? Что такое виртуальные функции?
Что означает такое обьявление функции? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
Сразу отвечу: А в PvP с ним. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|