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

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

Войти
Регистрация
Восстановить пароль
 
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
#1

Ограничения на аргументы шаблонов - C++

13.04.2013, 16:39. Просмотров 559. Ответов 8
Метки нет (Все метки)

Здорова!
Нужно перечислить общие ограничения на аргументы шаблонов для которых создаются объекты?

Что это за ограничения хз. ?

Без знания какие бывают ограничения на аргументы шаблона я не могу построить программку для проверки на эти ограничения.

Добавлено через 1 час 13 минут
Я так вижу не сильно понятен вопрос? Мне тоже. Давайте тогда по другому спрошу. Какие ограничения бывают на аргументы шаблонов для которых создаются объекты?
Аргументы что могут быть любые или как?
Это наверно имеется введу токо ограничения для шаблонов класса раз объекты создаются, для функции объект нельзя создать. Ну господа подключаемся хватит спать!

Вопрос очень серьезный и не такой легкий как кажется.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2013, 16:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ограничения на аргументы шаблонов (C++):

Аргументы функции: что значит "большие" и "небольшие" аргументы? - C++
Здравствуйте! Всем доброго дня! Растолкуйте пожалуйста! Что значит большие и небольшие?

Аргументы и using - C++
Я прочитал мног статей про аргументы в функциях (вообще меня тупо интересовало что пишется в скобках после main) , Но ничего не понял...

Функции-шаблонов - C++
1.Нужно переделать в шаблоне input - набор символов не через a = rand() % 15; , а через ручной. Помогите, пожалуйста. #include...

использование шаблонов - C++
не могу понять в чем дело.... для примера приведу простенькую функцию ввода элементов в вектор... #include <iostream> ...

Реализация шаблонов - C++
Всем привет! Можно ли как-то реализовывать шаблонный класс в другом файле? то есть имеем заголовочный файл там задаём сам шаблонный класс...

запрет шаблонов - C++
У меня есть некоторая шаблонная функция, которая определена для некоторого набора типов данныхх. Как можно сделать так, чтобы функцию...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
0x10
2460 / 1632 / 238
Регистрация: 24.11.2012
Сообщений: 4,015
13.04.2013, 16:53 #2
С такими вопросами надо скорее обращаться не на форум, а к книгам. Сходу помню только что в качестве аргументов шаблонов, не являющихия типами, не могут использоваться константы с плавающей точкой и строковые литералы. За полным списком - в книги.
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
13.04.2013, 16:55 #3
Это не особо помогло? Всё ещё непонятно, что за объекты создаются и причём тут шаблоны? Пример можно. Того, что, как вы считаете, попадёт под ограчения? Или типа того?
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
13.04.2013, 16:59  [ТС] #4
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Это не особо помогло? Всё ещё непонятно, что за объекты создаются и причём тут шаблоны? Пример можно. Того, что, как вы считаете, попадёт под ограчения? Или типа того?
От есть задачка: Разработайте схему, гарантирующую, что компилятор проверяет общие ограничения на аргументы шаблонов, для которых создаются объекты. Не достаточно просто проверить ограничения вида "Т должно быть типом производным от My_base".

Кроме условия больше ни чего нет

ЕЕ нужно решить теперь понятно????

Делать, то ее ясно считал файл разбил по строкам нашол шаблон, а на какие такие ограничения проверку, то делать? Что может быть не так в шаблонах?
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
13.04.2013, 17:04 #5
std::type_traits + static_assert что ли?
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
13.04.2013, 17:26  [ТС] #6
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
std::type_traits + static_assert что ли?
мб я не в теме, а мб просто нужно как то проверять отакие шаблоны типо class<string, hellow<string,int> > ? хз. Но их же компилятор проверяет. Мб и не это. Задачка, то легкая с пометкой (*2), а это не больше часа на ее решение. 45 минут можно и за 20, просто с подвохом

Добавлено через 1 минуту
чтобы ее сделать нужно знать какие ограничения бывают на аргументы, а так гадать мб это, а мб и не это.

Добавлено через 16 минут
Господа, давайте ее усно решим как мы и что будем делать? Схему разработать, ну и что дальше? Нам нужно чтобы компилятор гарантировано проверял аргументы. Да он и так всегда проверяет. ППц гамно, а не задача.
Я от подумываю мб кто то чото с переводом напутал, а я тут мучаюсь.
Короче кину ее нафиг наверно.
Вы не знаете, а мне она тоже не нада. Все пошол я по делам. .
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,268
Записей в блоге: 2
Завершенные тесты: 1
13.04.2013, 18:25 #7
Несколько раз перечитал задачу, так ничего и не понял. Из ограничений первое, что всплыло в голове - это локальный тип не может быть аргументом шаблона.
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
13.04.2013, 23:31  [ТС] #8
Kastaneda, Ничо пропущу, можно сослаться что условие не понятное не моя вина. Да и так норм из 16 задач 14 решил. Да у Страуструпа и задачи решения ищи, где хочешь, ничо не понятно. Конечно фигово но фиг сним тормозить тоже не охота, кода ничо не расписано как нада и решай, да нашо оно мне нада, тем более шаблоны сильно знать не нужно, достаточно уметь ими пользоваться в любом случае никто шаблоны создавать не будет. Решу потом када скил повышу.

Щас 11 задачек веселых по исключениям нужно решить и уже вопросов полно.
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6447 / 3094 / 306
Регистрация: 04.12.2011
Сообщений: 8,567
Записей в блоге: 4
14.04.2013, 00:18 #9
ninja2, попробую предположить, что может иметься в виду. По определению тип (а это аргумент шаблона) определяется способом хранения, интерпретации (тут могу быть неточен) и допустимыми операциями. Последнее может быть важно. Если я угадал, то имеется ввиду случай когда в классе, например применяется инструкция сложения, а для переданного типа она не определена, - например передана пара си-строк, вместо строк std::string.
Или передан нечисловой тип туда где вызывается математическая функция. Или сравниваются переменные, а для передаваемого типа не определена операция сравнения. Много чего тогда может быть.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2013, 00:18
Привет! Вот еще темы с ответами:

Создание шаблонов C++ - C++
Помогите создать шаблон пожалуйста или может быть у кого нибудь уже есть данные программы. Задание 1: Работа с одномерными массивами....

Использование шаблонов - C++
Здравствуйте, пытаюсь набросать элементарный пример шаблона в Visual Studio 12 и получаю ошибку компилятора: error LNK2001:...

С++ использование шаблонов - C++
Приветствую всех на форуме. Написал код с использованием шаблонов. Задание звучит так : Задание. 1. Реализовать класс...

С++, создание шаблонов - C++
Задание по C++ - создание шаблонов, помогите! Создать шаблон некоторого целевого класса А, возможно, реализованный с применением...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.04.2013, 00:18
Ответ Создать тему
Опции темы

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