R.18.3.4 Приведение указателей на функцию-член

R.18.3.4 Приведение указателей на функцию-член

Указатель на функцию-член некоторого объекта можно привести к указателю на какую-то другую функцию, например (int (*) ())p-›f. Результирующий указатель будет настроен на функцию, вызов которой будет происходить с помощью обращения к этой функции-члену для того же объекта. Как обычно результат такого вызова считается неопределенным.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

function - Создает новую функцию

Из книги автора

function - Создает новую функцию functionОпределяет набор операторов, которые вы определили для выполнения определенной задачи. Вы можете декларировать (declare), или определить (define), функцию в том же месте, где вы ее вызываете, или в любом другом месте муви-клипа. При определении


8.15. Эхо-сервер TCP и UDP, использующий функцию select

Из книги автора

8.15. Эхо-сервер TCP и UDP, использующий функцию select Теперь мы объединим наш параллельный эхо-сервер TCP из главы 5 и наш последовательный эхо-сервер UDP из данной главы в один сервер, использующий функцию select для мультиплексирования сокетов TCP и UDP. В листинге 8.14 представлена


Отклик на единичную функцию

Из книги автора

Отклик на единичную функцию Единичная ступенчатая функция показана на рис. 5.20, б. По определению она остается нулевой до t=0, а начиная с этого момента становится равной 1 В. Параметры элементов для схемы, показанной на рис. 5.20, a: R=2 Ом, R1=1 Ом и С=0,125 Ф. Анализ схемы показывает,


Приведение типов и IUnknown

Из книги автора

Приведение типов и IUnknown В предыдущей главе обсуждалось, почему необходимо определять тип на этапе выполнения в динамически собранной системе. Язык C++ предусматривает разумный механизм для динамического определения типа с помощью оператора dynamic_cast. Хотя эта языковая


10.2. Приведение формул к стандартной форме

Из книги автора

10.2. Приведение формул к стандартной форме Как было показано в предыдущем разделе, формулы исчисления предикатов, записанные с использованием связок -› (импликация) и ‹-› (эквивалентность), могут быть переписаны лишь с использованием связок& (конъюнкция), # (дизъюнкция) и


R.5.5 Операции указатель-на-член

Из книги автора

R.5.5 Операции указатель-на-член Операции указатель-на-член применяются слева направо.выражение-pm: выражение-приведения выражение-pm .* выражение-приведения выражение-pm -›* выражение-приведенияБинарная операция .* связывает свой второй операнд, который должен иметь тип


56. Обеспечьте бессбойную функцию обмена

Из книги автора

56. Обеспечьте бессбойную функцию обмена РезюмеОбычно имеет смысл предоставить для класса функцию swap в целях эффективного и бессбойного обмена внутреннего содержимого объекта с внутренним содержимым другого объекта. Такая функция может пригодиться для реализации ряда


Шаг 25 - Как сделать виртуальной свободную функцию.

Из книги автора

Шаг 25 - Как сделать виртуальной свободную функцию. Чаще всего этот прием я видел в отношении оператора operator‹‹. Точнее, не чаще, а всегда. На нем и разберем. Пусть у нас есть иерархия классов, и мы хотим определить диагностическую функцию Dump(). Она должна вываливать


Приведение числовых типов

Из книги автора

Приведение числовых типов В завершение нашего обзора операций приведения типов в C# заметим, что преобразование числовых типов подчиняется примерно таким же правилам. Чтобы поместить "больший" числовой тип в "меньший" (например, целое число int в byte), следует использовать


Совет 7. При использовании контейнеров указателей, для которых вызывался оператор new, не забудьте вызвать delete для указателей перед уничтожением контейнера

Из книги автора

Совет 7. При использовании контейнеров указателей, для которых вызывался оператор new, не забудьте вызвать delete для указателей перед уничтожением контейнера Контейнеры STL отличаются умом и сообразительностью. Они поддерживают итераторы для перебора как в прямом, так и в


Совет 28. Научитесь использовать функцию base

Из книги автора

Совет 28. Научитесь использовать функцию base При вызове функции base для итератора reverse_iterator будет получен «соответствующий» iterator, однако из сказанного совершенно не ясно, что же при этом происходит. В качестве примера рассмотрим следующий фрагмент, который заносит в вектор


7.9.1. Тип указателя на функцию

Из книги автора

7.9.1. Тип указателя на функцию Как объявить указатель на функцию? Как выглядит формальный параметр, когда фактическим аргументом является такой указатель? Вот определение функции lexicoCompare(), которая сравнивает две строки лексикографически:#include stringint lexicoCompare( const string sl, const


13.8. Битовое поле – член, экономящий память

Из книги автора

13.8. Битовое поле – член, экономящий память Для хранения заданного числа битов можно объявить член класса специального вида, называемый битовым полем. Он должен иметь целый тип данных, со знаком или без знака:class File {// ...unsigned int modified : 1; // битовое поле};После идентификатора