Информация об изменениях

Сообщение Re[2]: Безопасно ли присваивать один указатель другому?.. от 23.03.2018 14:53

Изменено 23.03.2018 15:35 AlexGin

Re[2]: Безопасно ли присваивать один указатель другому?..
Здравствуйте, SaZ, Вы писали:

SaZ>А если это указатели на методы? Где-то слышал, что указатель на метод — это далеко не (void *). Если кто-то может — киньте ссылкой на внятное объяснение.


Скажем так: это далеко не (void *), а более сложный тип — вот как первый параметр в _beginthread:
https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx
Справедливости ради: первый параметр в _beginthread — указатель на глобальную функцию или на статический метод класса.

Просто во времена ANSI C, указатель на void считался аналогом универсального указателя.
Вот пример функции сортировки и передачи в неё указателя на "компаратор":
https://www.tutorialspoint.com/c_standard_library/c_function_qsort.htm

А насчёт самих указателей на методы — вот подробнее:
https://www.codeguru.com/cpp/cpp/article.php/c17401/C-Tutorial-PointertoMember-Function.htm
Re[2]: Безопасно ли присваивать один указатель другому?..
Здравствуйте, SaZ, Вы писали:

SaZ>А если это указатели на методы? Где-то слышал, что указатель на метод — это далеко не (void *). Если кто-то может — киньте ссылкой на внятное объяснение.


Скажем так: это далеко не (void *), а более сложный тип — вот как первый параметр в _beginthread:
https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx
Справедливости ради: первый параметр в _beginthread — указатель на глобальную функцию или на статический метод класса.

Просто во времена ANSI C, указатель на void считался аналогом универсального указателя.
Вот пример функции сортировки и передачи в неё указателя на "компаратор":
https://www.tutorialspoint.com/c_standard_library/c_function_qsort.htm

А насчёт самих указателей на методы — вот подробнее:
https://www.codeguru.com/cpp/cpp/article.php/c17401/C-Tutorial-PointertoMember-Function.htm

Вот ещё что-то полезное по данной теме:
https://toster.ru/q/240698