ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
шаблон функции13.07.2010, 18:35. Показов 1127. Ответов 17
Метки нет (Все метки)
Здрасти. Как правильно написать шаблон ,например, этой функции?
но если у меня будет матрица типа float, то row и col тоже будут float, а это же неверно Как сделать правильно?
0
|
13.07.2010, 18:35 | |
Ответы с готовыми решениями:
17
Используя перегруженные функции и шаблон функции удалить из массива элемент по индексу шаблон функции. Задачей функции является округление вышеуказанного вещественного числа с заданной точностью Ошибка в шаблоне функции: "Отсутствуют экземпляры шаблон функции, соответствующие списку аргументов" Перегруженные функции и шаблон функции |
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||||||||||
13.07.2010, 19:06 | 2 | ||||||||||
Указывай специализацию шаблона при вызове функции:
Сопоставление между вызовом и объявлением шаблона осуществляется по аргументам функции, а не по возвращаемому значению, поэтому в данном случае специализация шаблона необходима. А в следующем примере она необязательна:
Однако, к аргументам функций, тип которых определяется параметром шаблона, не применяются стандартные преобразования. Т.о., если переменные x и y в приведенном примере будут разных типов, то опять же нужно будет явно указывать специализацию шаблона при вызове функции, либо провести явное преобразование одного аргумента к типу другого.
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
14.07.2010, 00:40 | 3 | |||||
1
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
14.07.2010, 00:46 [ТС] | 4 |
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
14.07.2010, 00:47 | 5 |
PointsEqual, Странно. Для разных типов данных должно бы... Например int и float...
0
|
14.07.2010, 00:56 | 6 | |||||
0
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
||||||
14.07.2010, 01:09 [ТС] | 7 | |||||
ошибок нет, да.
но вот
0
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
14.07.2010, 01:15 [ТС] | 9 |
fasked, спасибо, дошло.
Еще на счет size_t- его где следует применять?
0
|
14.07.2010, 01:18 | 10 |
size_t - это синоним unsigned int. название говорящее, применяется обычно для обозначения длин, размеров, и всего подобного, что не может быть отрицательным по определению. функция strlen возвращает значение size_t.
0
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
14.07.2010, 01:24 [ТС] | 11 |
и если я буду тип счетчика делать size_t , то это корректно будит.?
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
14.07.2010, 01:27 | 12 |
корректно, но без фанатизма, есть ведь просто unsigned
1
|
14.07.2010, 01:28 | 13 |
предупреждения задолбали? xD
да, конечно, ничего страшного, ведь счетчик у тебя тоже не может принять отрицательных значений в данном случае. вообще корректно хотя бы потому что в int не влезет такое большое число как в size_t и счетчик должен быть такого же типа или больше
1
|
ниначмуроФ
851 / 535 / 110
Регистрация: 12.10.2009
Сообщений: 1,913
|
|
14.07.2010, 01:30 [ТС] | 14 |
0
|
1674 / 1046 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
14.07.2010, 12:12 | 16 |
Хотелось бы узнать, по каким причинам лучше именно unsigned int. Потому что в моём представлении у size_t есть пара преимуществ:
а) применение этого типа для указания размеров и индексов позволяет более чётко выразить свой замысел и повысить читабельность программы; б) этот тип автоматически адаптируется под 64-битную платформу, в отличие от имеющего фиксированный размер unsigned int.
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
14.07.2010, 12:24 | 17 | |||||
Корректно, однако при работе с беззнаковым целым в качестве счетчика есть одна тонкость - следующий цикл правильно работать не будет, т.е. он будет бесконечным:
1
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
||||||
14.07.2010, 13:01 | 18 | |||||
Вообще не писать. Вообще. Никак.
Поскольку употребляется "шаблон", то это, без сомнения, C++. Функция, очевидно, будет употребляться для работы с матрицами. В идеологии С++ самое правильное, что можно сделать - это написать
1
|
14.07.2010, 13:01 | |
14.07.2010, 13:01 | |
Помогаю со студенческими работами здесь
18
Шаблон функции в С++ c++ шаблон функции Шаблон функции Шаблон функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |