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

Указатели на функции (Прата) - не пойму, как это работает - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как ограничить поле ввода только одним символом? А двумя? http://www.cyberforum.ru/cpp-beginners/thread1228219.html
Как ограничить поле ввода только одним символом? А двумя? Например чтобы сразу после нажатия клавиши(двух), программа переходила к следующей операции, не ожидая нажатия "ентер", либо же не давала ввести символов больше положенного? Как сделать так, чтобы можно было напечатать в строку ввода только определённые символы, например y/n? Спасибо.
C++ Невозможно запустить программу. Отсутствует libiconv-2.dll Запуск программы невозможен так как на компьютере отсутствует libiconv-2.dll.попробуйте переустановить программу Добавлено через 36 секунд Что нужно сделать? http://www.cyberforum.ru/cpp-beginners/thread1228210.html
C++ Неверная обработка данных при вводе двух и более величин
У меня по коду все правильно, при вводе одного значения n вывод верный. Если ввод включает 2 и больше значений n, то первое значение, остальные такое чувство, что не проверяет программа. Вот код: #include <iostream> #include <vector> #include <cmath> using namespace std; int main() {
C++ Зависание потоков. Работа с файлами
Всем еще раз привет. Очень прошу помощи. Пишу на С++ под винду, с учетом специфики проекта выбор остановился на boost library. Пишу многопоточное приложение следующего вида: создается несколько потоков. далее потоки поочереди читают файл, выполняют какую-то длительную логику и поочереди записывают в другой файл. т.е. здесь важна очередность записи в файл, каждый поток ждет предыдущего:...
C++ Анализатор входящих сообщений сторонних ПО и сервисов http://www.cyberforum.ru/cpp-beginners/thread1228154.html
В WinAPI не силен, однако необходимо написать программу на С++, анализирующую входящие сообщения какого-нибудь сервиса обмена сообщениями, например вконтакте. По самому анализатору наброски есть, однако что абсолютно не могу понять - как моей программе получить входящие сообщения? Либо нужно как-то следить за открытым в другом окне браузером и отлавливать входящие, либо еще как-то... В общем...
C++ Возожно ли создать массив указателей на шаблоны функций? Можно ли создать массив указателей на шаблоны функций, если да, то как? Пробовал вот так template <class my_type> void my_func( my_type* input_arr) потом пытался запихнуть my_type* как аргумент функции, но компилятор ругается на то, что my_type не объявлен можно конечно сделать так: void (*p)(int*) = &my_func<int>; void (*pp)(float*) = &my_func<float>; но тогда получится несколько... подробнее

Показать сообщение отдельно
DrOffset
6909 / 4102 / 933
Регистрация: 30.01.2014
Сообщений: 6,893
16.07.2014, 19:11     Указатели на функции (Прата) - не пойму, как это работает
Цитата Сообщение от gru74ik Посмотреть сообщение
Но я хоть убей не могу понять, каким волшебным образом компилятор понимает,
что переменная int lns - это та же самая int code
Это не та же самая переменная.
Компилятор ничего не "подставляет". Он генерирует машинный код, который, условно говоря, копирует содержимое ячейки памяти обозначенной как code в ячейку памяти обозначенную как lines. Естественно в машинном коде никаких имен нет, есть только адреса. И это мы еще не касаемся такой темы как оптимизация.

Указатели на функцию здесь исключительно в качестве синтетического примера. Искать глубинный смысл этого кода довольно затруднительно, учитывая, что смысл только в демонстрации (механизма).
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru