Непрозрачный указатель

Непрозрачный указатель (англ. opaque pointer) — идиома программирования, которая реализована в виде указателя на данные, структура которых неизвестна функции, получающей этот указатель в качестве своего аргумента. Недостаток информации, однако, не может стать препятствием для передачи этого указателя в ту часть кода, которая знает, как с ним работать[1].

Данная идиома была реализована в языках программирования C, Objective C, COBOL и C++. Она известна также под названиями указатель на реализацию (pimpl), d-указатель и «чеширский кот»[2]. В языке программирования C непрозрачные указатели используются для создания интерфейса между структурами данных языка C и теми языками программирования, которые не имеют методов обращения к ним[3].

Примечания

  1. Клеменс, 2015, Непрозрачный указатель, с. 359.
  2. Смит, 2013, Порождающий шаблон, с. 121.
  3. Клеменс, 2015, Мирное сосуществование, с. 127.

Источники

  • Бен Клеменс. Язык С в XXI веке. М. : ДМК, 2015. — 376 с. ББК 32.973.26. УДК 004.6. — ISBN 978-5-97060-101-3.
  • Джейсон Мак-Колм Смит. Элементарные шаблоны проектирования. М. : И. Д. Вильямс, 2013. — 304 с. ББК 32.973.26-018.2.75. УДК 681.3.07. — ISBN 978-5-8459-1818-5.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.