Вопросы по теме 'unsafe-pointers'
Преобразование **T в *unsafe.Pointer в Go
Как преобразовать переменную типа **T в *unsafe.Pointer ?
Пример ниже даст ошибку компиляции:
не может преобразовать &ptr (тип **s) в тип *unsafe.Pointer
package main
import (
"sync/atomic"
"unsafe"
)
type s struct {...
3164 просмотров
schedule
12.03.2023
Go: преобразовать unsafe.Pointer в указатель на функцию и наоборот
В C вы можете поместить указатели на функции в массив указателей void и преобразовать их обратно в указатели на функции любого типа:
extern int (*fn1)(void);
extern void (*fn2)(int);
void foo(void)
{
void *array[2];
int i;...
2865 просмотров
schedule
30.07.2022
Почему NSMutableData меняет адрес указателя?
Я хочу быстро предварительно выделить память и обернуть ее NSMutableData , но с доступом через указатель. Итак, у меня есть это:
var vertex = UnsafeMutablePointer<Float>.alloc(numberOfVertex * 3)
vertex.initialize(0)
vertexData =...
98 просмотров
schedule
30.04.2022
Использование AudioBufferList со Swift еще раз
Ссылаясь на Использование AudioBufferList с Swift
Я нашел следующее решение здесь, в Stack Overflow, для воспроизведения звука с помощью аудиоустройства. Моя проблема здесь в том, что я не могу поместить фактические данные в свой буфер, такие...
453 просмотров
schedule
15.11.2022
Swift 3 UnsafePointer($0) больше не компилируется в Xcode 8 beta 6
Мой фрагмент кода выглядит следующим образом…:
let defaultRouteReachability = withUnsafePointer(to: &zeroAddress) {
SCNetworkReachabilityCreateWithAddress(nil, UnsafePointer($0))
}
… больше не компилируется со следующей...
21171 просмотров
schedule
13.01.2023
Инициализатор UnsafePointer ‹UInt8› в Swift 3
У меня есть класс проверки квитанций, который устарел с момента выхода Swift 3. Я исправил некоторые проблемы, но у меня все еще много ...
Вот исходный код GitHub, который я использовал:...
19484 просмотров
schedule
06.05.2023
Как привести __NSMallocBlock__ к его базовому типу в Swift 3?
У меня был трюк , чтобы помочь протестировать UIAlertController , который работал в Swift 2.x:
extension UIAlertController {
typealias AlertHandler = @convention(block) (UIAlertAction) -> Void
func tapButtonAtIndex(index: Int) {...
2148 просмотров
schedule
17.03.2024
Указатели в Swift
Я пытаюсь понять использование указателей в Swift, в частности: Unsafe[Mutable]Pointer и UnsafeRaw[Mutable]Pointer . У меня есть несколько вопросов по теме.
Является ли UnsafePointer <T> равным const T * Pointer в ? и...
10723 просмотров
schedule
09.09.2022
Не удается преобразовать значение типа «UnsafePointer‹MIDINotification›» в ожидаемый тип аргумента «UnsafePointer‹_›»
Я пытаюсь обновить код из примера CoreMidi, который я нашел по адресу http://mattg411.com/swift-coremidi-callbacks/
И код датирован до Swift 3, поэтому мне нужно внести некоторые коррективы. Проблема в том, что мне практически никогда не...
1540 просмотров
schedule
01.01.2023
Как скопировать память в UnsafeMutableRawPointer, начиная с индекса в Swift?
Я знаю, как скопировать память из массива в UnsafeMutableRawPointer, начиная с индекса 0, используя:
mutableRawPointer.copyMemory(from: bytes, byteCount: bytes.count * MemoryLayout<Float>.stride)
где bytes — массив чисел с плавающей...
1645 просмотров
schedule
14.07.2023
Улучшить производительность Bitconverter.ToInt16
Я собираю данные с USB-устройства, и эти данные должны поступать на компонент вывода звука. На данный момент я не доставляю данные достаточно быстро, чтобы избежать щелчков в выходном сигнале. Так что каждая миллисекунда на счету.
На данный...
442 просмотров
schedule
26.02.2024
Назначение вручную выделенного UnsafeMutablePointer‹String›
Я хотел бы присвоить значение указателя указателя на строку, которая выделяется вручную. Другими словами, я хотел бы написать что-то вроде этого:
let pointer = UnsafeMutablePointer<String>.allocate(1)
pointer.pointee = "Hello, World!"
//...
32 просмотров
schedule
27.02.2024
Вызов функции C с указателем массива и указателем int из Swift
Я создаю библиотеку C плюс оболочку для удобного использования в Swift. Функция C принимает два параметра: указатель массива и указатель типа int:
int crgetproclist(struct kinfo_proc *proc_list, size_t *count) {
int err = 0;
size_t length...
114 просмотров
schedule
07.02.2023