Описание тега opaque-pointers

В компьютерном программировании непрозрачный указатель - это частный случай непрозрачного типа данных, типа данных, объявленного как указатель на запись или структуру данных некоторого неопределенного типа.
0 ответов

Ошибка синтаксиса SQL рядом с "CLUSTERED": ошибка синтаксиса

При загрузке SQL-запроса его ошибка рядом с "CLUSTERED": синтаксическая ошибка import SQLite3 var db: OpaquePointer? let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false) .append…
08 окт '18 в 06:28
2 ответа

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

Я пытаюсь использовать прыщ идиома. В частности, класс реализации будет реализовывать другой интерфейс: // public_class.h class PublicClass { public: /* public interfaces here */ private: class _PublicClass_impl; friend class _PublicClass_impl; prot…
15 апр '12 в 01:47
0 ответов

Как получить размер структуры неполного типа из указателя на тип структуры в c

Есть ли способ получить размер структуры из указателя типа структуры (STP) без предварительного объявления структуры с помощью STP? Этот похожий вопрос не имел рабочего ответа на мой вопрос: разыменование указателя на неполный тип - typedef struct #…
04 янв '19 в 20:28
3 ответа

Непрозрачные типы, размещаемые в стеке в C

При проектировании интерфейса C обычно допускают использование открытого интерфейса (.h) только то, что нужно знать программе пользователя. Следовательно, например, внутренние компоненты структур должны оставаться скрытыми, если пользовательская про…
02 июл '15 в 22:16
2 ответа

Как удалить головной узел в связанном списке? С

Таким образом, у меня есть стек связанных списков в виде непрозрачного объекта в C. Я передаю указатель на головку указателя на функцию. это код для функции удаления заголовка. я называю это поп MY_STACK pop(MY_STACK* head) { Node_ptr hHead = (Node_…
04 июл '15 в 07:02
1 ответ

Должен ли непрозрачный указатель быть реализован с использованием неназванной структуры или неопределенного тега?

В настоящее время я разрабатываю API, который позволяет пользователю передавать непрозрачный указатель, который будет возвращен позже при вызове методов интерфейса, который он должен реализовать. Это в основном сводится к следующему: API сторона: cl…
07 май '14 в 21:14
3 ответа

C++ Передача личных данных из непрозрачного указателя

Недавно я узнал об непрозрачных указателях в C++. Я начал использовать их, чтобы скрыть частных участников, которые являются платформенными. Такие как ссылки на определения в <windows.h> и т.п. Теперь у меня есть несколько систем, которые стро…
07 сен '13 в 20:54
0 ответов

Каковы плюсы и минусы непрозрачных указателей по сравнению с номерами идентификаторов с использованием языка программирования C?

В настоящее время я использую непрозрачные указатели в качестве стандартного метода инкапсуляции, но, глядя на API OpenGL, я думаю, что использование идентификаторов может быть лучшим выбором. Я хотел бы получить совет от опытных программистов на Си…
1 ответ

Добавление константы к непрозрачной ручке

Если бы я создал модуль C, который представляет дескриптор пользователю с указателем на заранее объявленную структуру, вот так: typedef struct FOO_Obj *FOO_Handle; Если я тогда объявлю прототипы функций, которые используют его как const квалифициров…
14 июл '15 в 12:34
2 ответа

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

В моей библиотеке есть структура экземпляров, которая содержит все необходимое для библиотеки, поэтому вы можете определить несколько экземпляров библиотеки. Библиотека требует, чтобы пользователь определил свое собственное расширение или пользовате…
29 авг '13 в 17:53
0 ответов

Экспорт непрозрачного класса

В потоке я могу сделать следующее: interface IC { get value(): { x: number }; } class C implements IC { value = { x: 7, y: 42 }; doSmth() { console.log(this.value.x, this.value.y); } } export opaque type CC: IC = C; Но я хочу экспортировать это как …
14 авг '18 в 23:50
2 ответа

Непрозрачный указатель на структуру с элементами шаблона

Предположим, я строю связанный список (реальная структура данных совершенно другая, но для вопроса достаточно связанного списка), чьи узлы выглядят как template <typename T> struct node { struct node<T> *next; T data; }; Для моей структу…
25 июн '16 в 17:38
1 ответ

CGColor внутренности

Я надеюсь понять внутреннее содержание объекта CoreFoundation CGColor в этом исследовании. Я мог бы найти примерное определение структуры CGColor из проекта свободного кварца, которое, кажется, соответствует декларации IOS (опираясь на мои исследова…
26 окт '13 в 14:31
1 ответ

Разрешено ли приведение из TYPE* в unsigned char*?

C99 - в частности, раздел 6.2.6.1, параграф 4 - гласит, что копирование представления объекта в массив беззнаковых символов допускается: struct { int foo; double bar; } baz; unsigned char bytes[sizeof baz]; // Do things with the baz structure. memcp…
13 июл '14 в 21:01
1 ответ

Как мне создать модуль в MISRAC:2012, который следует Dir 4.12 и 4.8?

Этот вопрос относится к кодированию в ISO C99 в соответствии с рекомендациями MISRAC:2012. Я ищу руководство по Dir 4.8 "Если указатель на структуру или объединение никогда не разыменовывается внутри единицы перевода, то реализация объекта должна бы…
11 фев '16 в 14:23
2 ответа

C++ скрывает унаследованный класс?

Я пытаюсь скрыть включение стороннего файла в заголовок основного класса в библиотеке, которую я написал, из исполняемых файлов, которые его связывают. Я имею в виду: У меня есть библиотека, которую я написал, которая определяет класс A. Класс A нас…
16 дек '13 в 02:54
1 ответ

Как мне объявить непрозрачную анонимную структуру, определенную в сторонней организации?

Я работаю над сторонним модулем оболочки. Я надеюсь, что мой основной заголовочный файл не имеет сторонних связанных заголовочных файлов. Каждый тип параметра и возвращаемый тип непрозрачны, только объявив его. Но есть анонимная структура, определен…
30 мар '16 в 11:32
2 ответа

Преобразование декларации C в Delphi XE2

У меня возникают проблемы при переводе некоторых объявлений C в Delphi XE2 для вызова функций в DLL. Я перевел все объявления функций из исходного файла Visual Basic, но при тестировании их я столкнулся с проблемами. Некоторые функции возвращали зна…
14 авг '14 в 19:49
1 ответ

Предоставить непрозрачный тип для Python с помощью Swig

Я пытаюсь обернуть непрозрачный тип в C, используя SWIG, но я не могу понять, как это сделать. У меня есть три файла, перечисленные ниже: simplelib.c: #include <assert.h> #include <stdlib.h> #include "simplelib.h" struct _simplelib_my_ty…
27 мар '13 в 11:15
0 ответов

Есть ли способ, чтобы clang знал о пользовательском непрозрачном подсчете ссылок?

У меня есть несколько непрозрачных типов, и я реализовал семантику подсчета ссылок, которая имитирует базовую основу. Это работает достаточно хорошо, за исключением того, что Clang предупреждает меня о практически допустимых утечках. MyTypeRef MyTyp…
22 дек '13 в 07:02