Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Invoke Virtual
Заблокирован
#1

Передача указателя на шаблонную функцию в другую функцию

15.08.2016, 20:53. Просмотров 284. Ответов 2
Метки нет (Все метки)

Пишу тест для нескольких улучшений квиксорта с измерением времени. Функция benchmark принимает итераторы для диапазона элементов, указатель на процедуру квиксорта и описание теста. Как правильно определять тип указателя на шаблонную функцию в таком шаблоне?

Пока что я для этого создал дополнительное объявление функции в заголовке и вывожу его тип decltype'ом. А как правильно?

C++
1
2
3
4
5
6
7
8
9
10
11
12
#pragma once
#include <chrono>
#include <string>
 
template<class Iter>
void qsort_t(Iter first, Iter last);
 
template<class Iter>
inline void benchmark(Iter first, Iter last, decltype(qsort_t) proc, std::string comment)
{
 
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2016, 20:53
Ответы с готовыми решениями:

Передача массива в шаблонную функцию, найти ошибку
#include &lt;iostream&gt; #include &lt;time.h&gt; using namespace std; ...

Передача массива через указатель в шаблонную функцию
Здравствуйте. В общем есть шаблонный класс List, который является двусвязным...

Передача в функцию указателя
Почему плохо передавать в функцию указатель на строку или массив и возвращать...

передача указателя на функцию
Помогите исправить ошибку уже незнаю как быть В бивает ту ошибку error...

Передача указателя на функцию
Есть класс в котором: typedef void(*setChar)(int x, int y, wchar_t...

2
dvano
134 / 65 / 27
Регистрация: 18.06.2014
Сообщений: 216
Завершенные тесты: 1
15.08.2016, 21:39 #2
Может быть я не так понял, но вот:
C++
1
2
3
4
5
template<class Iter>
inline void benchmark(Iter first, Iter last, void (*proc)(Iter first, Iter last), std::string comment)
{
 
}
1
zarko97
279 / 39 / 13
Регистрация: 11.10.2015
Сообщений: 405
21.01.2017, 21:23 #3
можно так:
C++
1
std::function<void(Iter, Iter)> func
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2017, 21:23

Передача указателя в функцию
Здраствуйте. Если не охота читать гору текста то этот абзац + последущий за ним...

Передача указателя на функцию
Доброго дня Форумчане. Хотелось бы узнать как вызывать функцию получив на нее...

Передача указателя в функцию
Поиском не пользовался, возможно данный вопрос уже проскакивал. Проблема том,...


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

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

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