問題タブ [unsafe-pointers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - UnsafeMutablePointer: リスクは何ですか?
Objective-C ライブラリからのコールバックで次のいずれかを受け取りました。UnsafeMutablePointer<UInt8>
私はそれを解析することができます。ライブラリに送り返すために作成することもできますが、「安全でない」タイプを使用するリスクは何ですか? これらのリスクを回避するにはどうすればよいですか?
また、Objective-C ライブラリはuint8_t *
、Swift へのどのブリッジを使用していUnsafeMutablePointer<UInt8>
ますか?これは Swift 相互運用に最適ですか?
swift - UnsafeMutablePointer を型キャストする Swift の慣用的な方法非 void 型の配列に?
多くの C/Obj-C API は、void へのポインターを扱います。これらの型は通常、UnsafeMutablePointer または UnsafePointer (const void*) として表されます。これらの値を [Float] や [UInt8] などのパックされたデータ配列に再解釈する Swift の一般的な方法は何ですか?
swift - UnsafeBufferPointer、またはバッファー ポインターの開始メモリ位置で使用されている UnsafePointer を解放する必要がありますか?
オブジェクトを 16 進文字列にシリアル化する次の拡張機能を検討してください。NSData
NSData
が非所有ポインターである場合、UnsafeBufferPointer
明示的に破棄を呼び出す必要がない (またはできない) ことを意味しますか? UnsafePointer
オブジェクトのバイトのメモリからを作成している場合NSData
、バッファがコピーされた後にそのポインタを確実に破棄する必要がありますか?
swift - UnsafePointer の作成方法既存の CGRect から
UnsafePointer を作成するには? let mediaBoxPtr = UnsafePointer(mediaBox) を試みましたが失敗しました
swift - UnsafeMutableRawPointer からバイトを取得するには?
C API (Core Audio など) によって Swift 関数に渡された UnsafeMutableRawPointer (Swift 3 の新機能) が指すメモリからバイト (または Int16、float など) にアクセスするにはどうすればよいですか?
swift3 - Swift 3 UnsafePointer($0) は Xcode 8 ベータ 6 でコンパイルされなくなりました
次のような私のコードスニペット…:
…私が理解できない次のエラーでコンパイルされなくなりました:
それを修正するにはどうすればよいですか?
c# - クラスがジェネリックであるクラス定義の構造体へのポインターを宣言する
unsafe
C# でorfixed
キーワードを使用すると、アンマネージ型byte*
int*
などへのポインターを定義できます。アンマネージ型のみを含む構造体へのポインターも定義できます。次に例を示します。
ただし、がジェネリック クラス定義内struct
で定義されている場合、 error が発生します。この制限の理由は何ですか?CS0208: Cannot take the address of, get the size of, or declare a pointer to a managed type
更新: このエラーは、含まれているクラスがジェネリックである場合にのみ発生します。エラーの理由はまだわかりません.ジェネリック型を参照していないため、コンパイラは構造体に常にアンマネージ型が含まれることを確認できますT
。
注:この機能は最終的なバージョンで C# に追加されるようです: GitHub でこの問題を参照してください。
swift3 - Swift 3 - c 構造体 sockaddr_in を CFData に変換する
あなたの助けが必要です。このコードは Swift 3 でコンパイルされなくなりました
「withUnsafePointer」の行を修正する必要がありますが、方法がわかりません。
私はこのようなことを試しました
コンパイラは withMemoryRebound を使用する必要があると言いますが、どのようにですか? ありがとう