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

Указатель на функцию, укзатель на воид и возвращаемое функцией значение - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Замена структуры с функциями на класс с методами http://www.cyberforum.ru/cpp-beginners/thread1239995.html
Заменить код приведенный ниже на соответствующие объявление класса golf. Замените функцию setgolf(golf & g, const char*name, int hc); конструктором с соответствующими аргументами для обеспечения инициализации значений. Сама структура. const int Len = 30; struct golf { char fullname; int handicap; }; void setgolf(golf & g, const char*name, int hc);
C++ Проверка на равенство буквы и элемента из массива выдает ошибку вот такая проблема инструкция else if (A == "й" || A == "Й" )//дает ошибку 1 no conversion from 'const char *' to 'int' //и ошибку 2 int' differs in levels of indirection from 'const char ' где накосячил ? http://www.cyberforum.ru/cpp-beginners/thread1239985.html
C++ Компиляция класса вектор. Ошибка: missing template arguments before «v»
Собственно код: #include <iostream> #include <fstream> #include <vector> #include <string> using namespace std; int main(){
Как получить адрес переменной типа unsigned char? C++
Всем привет! Как получить адрес переменной типа unsigned char? Всё ерунда получается #include <iostream> using namespace std; int main() {
C++ Что означает эта строчка? http://www.cyberforum.ru/cpp-beginners/thread1239974.html
cout<<MyClass::addn(2)<<endl;
C++ Требуется посчитать сумму целых чисел от 1 до N Добрый день подскажите такой вопрос? решил порешать задачи на этом сайте: Сумма (Время: 1 сек. Память: 16 Мб Сложность: 19%) Требуется посчитать сумму целых чисел от 1 до N. Входные данные В единственной строке входного файла INPUT.TXT записано единственное целое число N, не превышающее по абсолютной величине 104. подробнее

Показать сообщение отдельно
orange_fox
 Аватар для orange_fox
34 / 34 / 6
Регистрация: 06.04.2014
Сообщений: 189
08.08.2014, 15:16     Указатель на функцию, укзатель на воид и возвращаемое функцией значение
Есть функции, идентичные по функционалу, но возвращающие значения разных типов(сами значения не важны).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
double a()
{
    cout << 123 << endl;
    return 23.4;
}
int b()
{
    cout << 123 << endl;
    return 11;
}
 
string c()
{
    cout << 123 << endl;
    return "string";
}
Есть функция, которая принимает указатель на void, и выполняет функцию, преобразовав указатель к void(*)();
C++
1
2
3
4
void execute(void* func)
{
    ((void(*)())func)();
}
Собственно, вопрос: безопасно ли использовать эту функцию для подобных вызовов?
C++
1
2
3
execute(a);
execute(b);
execute(c);
Влияет ли как-то несовпадающий тип возвращаемого значения?

Если да, то как сделать безопасный аналог функции execute()?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru