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

Шаблон

21.04.2013, 22:07. Показов 639. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Есть две функции:
C++
1
2
void mouseMove( int x, int y, int speed = 1, int xMaxOffset = 0, int yMaxOffset = 0 );
void mouseMove( int x, int y, int xMaxOffset = 0, int yMaxOffset = 0, int speed = 1 );
Хочется под шаблон подогнать, но не могу понять: как потом отличать параметры, коли они все int? И, если не сложно, можно иллюстрирующий пример? Спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.04.2013, 22:07
Ответы с готовыми решениями:

Шаблоны функций, Ошибка: для использования класса шаблон требуется список аргументов шаблон
Есть у меня 3 структуры Трамвай , Троллейбус , Автобус. Для автобуса определены функции (работают) Троллейбус и Трамвай одинаковые поля...

Передать шаблон std::array в другой шаблон
Шаблон std::vector передать получается: template <class T, template<class U, class = allocator<U> >class Seq > class A{ ...

Шаблон стека изменить на шаблон очереди
Кто может пояснить как работает этот шаблон стека, так как мне нужно изменить его на очередь,а я не совсем понимаю его template <class...

5
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
21.04.2013, 23:32 2
WennY, Никак. А заради чего две функции с одинаковыми параметрами, но разным порядком? Можно заюзать именованные параметры из буста.
0
 Аватар для lemegeton
4883 / 2679 / 917
Регистрация: 29.11.2010
Сообщений: 5,767
21.04.2013, 23:45 3
Цитата Сообщение от WennY Посмотреть сообщение
void mouseMove( int x, int y, int speed = 1, int xMaxOffset = 0, int yMaxOffset = 0 );
void mouseMove( int x, int y, int xMaxOffset = 0, int yMaxOffset = 0, int speed = 1 );
Что-то я не понял -- у вас две функции отличаются порядком следования аргументов?! Это работает вообще?

Цитата Сообщение от WennY Посмотреть сообщение
Хочется под шаблон подогнать
"Под шаблон" имеет смысл "подгонять" в том случае, если тип передаваемых значений неизвестен. В вашем случае все параметры, похоже, целочисленные и смысла в шаблоне просто нет.
0
1 / 1 / 1
Регистрация: 21.04.2013
Сообщений: 29
21.04.2013, 23:58 4
Цитата Сообщение от WennY Посмотреть сообщение
Доброго времени суток. Есть две функции:
C++
1
2
void mouseMove( int x, int y, int speed = 1, int xMaxOffset = 0, int yMaxOffset = 0 );
void mouseMove( int x, int y, int xMaxOffset = 0, int yMaxOffset = 0, int speed = 1 );
Хочется под шаблон подогнать, но не могу понять: как потом отличать параметры, коли они все int? И, если не сложно, можно иллюстрирующий пример? Спасибо
знакомы с перегрузкой функций??
это где названия одинаковые а типы разные, просто при вызове указывать тип и все)
0
0 / 0 / 1
Регистрация: 01.11.2010
Сообщений: 131
22.04.2013, 00:03  [ТС] 5
Цитата Сообщение от ForEveR Посмотреть сообщение
А заради чего две функции с одинаковыми параметрами, но разным порядком?
Ну, например иногда нужно после двух обязательных указать только speed, а иногда - все, кроме как раз спида. Вот я решил упростить жизнь юзерам функции.. В целом все понятно, спасибо. Я просто боялся, что чего-то недопер в шаблонах, потому решил перестраховаться.
0
 Аватар для lemegeton
4883 / 2679 / 917
Регистрация: 29.11.2010
Сообщений: 5,767
22.04.2013, 00:44 6
Цитата Сообщение от homer4ek Посмотреть сообщение
знакомы с перегрузкой функций??
это где названия одинаковые а типы разные, просто при вызове указывать тип и все)
Знаком. Перегрузка это действительно, когда названия одинаковые, а типы параметров разные.

В вашем примере две функции, обе принимают ровно по пять целых чисел. Это не компилируется, ибо redefinition.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.04.2013, 00:44
Помогаю со студенческими работами здесь

"LinkedList": для использования класс шаблон требуется список аргументов шаблон
Что то не могу въехать в чем промах? LinkedList.h #pragma once #include <iostream> #include <string> template<typename...

Ошибка при компиляции:"C2955 "Tree": для использования класс шаблон требуется список аргументов шаблон"
Есть класс бинарного дерева, в нем структура. Класс - Tree, структура - list(листик, а не список). При компиляции выдает...

Шаблон родительского класса и шаблон класса потомка
Запутался, как правильно пронаследоваться от шаблона класса? #include <iostream> #include <cmath> using namespace std; ...

Шаблон
Всем доброе время суток)) Вот нпаисал прогу: #include <string.h> #include <iostream> using namespace std; template<class...

Шаблон
По заданному натуральному числу n вывести изображение размером n * n, образованное символами звездочка и пробел как показано в...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
Tестирование Pull Request в Kubernetes с помощью vCluster
stackOverflow 03.03.2025
При работе с микросервисной архитектурой критически важно обеспечить качественное тестирование каждого изменения перед его слиянием в основную кодовую базу. Однако тестирование Pull Request в. . .
Использование пакета Context в Golang
bytestream 03.03.2025
Управление параллельными процессами в современных приложениях - сложная задача, особенно когда речь идет о микросервисной архитектуре и распределенных системах. Пакет context в Go - это гибкое. . .
WebAssembly и Go: Работа с DOM и обработка ошибок
bytestream 03.03.2025
WebAssembly представляет собой технологию, позволяющую запускать низкоуровневый код в браузере практически на нативной скорости. Особенно интересные возможности открываются при использовании. . .
WebAssembly и Go: Создание высокопроизводи­­тельных веб-приложений
bytestream 03.03.2025
WebAssembly - это технология, изменившая подход к созданию высокопроизводительных веб-приложений. До появления WebAssembly JavaScript оставался единственным языком программирования, который понимали. . .
Контексты в Go: отмена, тайм-ауты и распространение
bytestream 03.03.2025
В многопоточном программировании существует множество ситуаций, когда необходимо прерывать выполнение горутин или ограничивать время их работы. Отсутствие грамотного управления параллельными. . .
WebSocket в Go: создание масштабируемых real-time приложений
bytestream 03.03.2025
Веб-приложения все чаще требуют обработки данных в режиме реального времени. Традиционный подход с использованием HTTP-запросов имеет существенные ограничения для таких сценариев. При каждом запросе. . .
Как дебажить в Go: Руководство по отладке
bytestream 03.03.2025
Отладка в Go имеет свои особенности, связаные с строгой типизацией, моделью конкурентности и управлением памятью. Go предоставляет богатый набор встроеных средств для отладки, которые дополняются. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru