問題タブ [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 - Swift 構造体を UnsafeMutablePointer にキャストする
Swift構造体のアドレスをvoid UnsafeMutablePointerにキャストする方法はありますか?
私は成功せずにこれを試しました:
ありがとう!
編集:
私が実際に Swift に移植しようとしているコンテキストは、 Learning CoreAudioの最初の例です。
これは私が今までやってきたことです:
私は Swift にとどまる努力をしていますが、これが利点よりも問題であることが判明した場合は、C 関数にリンクすることになります。
編集: 下の行
Swift で CoreAudio の AudioQueue を使用しようとしているためにこの質問にたどり着いた場合は、使用しないでください。(詳しくはコメントを読んでください)
objective-c - Objective-C ポインター マジック。タイプ保護
私は辞書を持っています。次のように、その値の 1 つを抽出します。
そして foo は次のとおりです。
辞書の値が数値の場合、magicValue は になりますNSNumber
。したがって、定義された文字列ポインターはNSNumber
. ログは、番号チェックに対して yes を返します。
クラス「magicValue」が何であるかを確認するために、そのようなメソッドに保護を追加したことはありません。文字列パラメーターでメソッドを定義すると、文字列になると想定しました。
そのような振る舞いを説明し始めて、常にチェックを追加する必要がありますか、それともそのような方法でその辞書の値を魔法に割り当てて私の方法を使用した人のせいですか. ベストプラクティスのアドバイスと、これを処理する方法が必要です。
この質問はすでに回答されている可能性がありますが、検索方法がわかりませんでした。
c# - 現在も「public String(char* value)」を使用していますか?
私は(文字列「クラス」(.NET)の内部(定義))に出くわしました:
解説に書かれていること:
私の質問:
安全でないコンテキストでのみ使用できますか、現在でもその String(char* value) を使用することは理にかなっていますか、またはこれは過去からの遺物であり、この "ABC\0"(その文字列の終了) に基づいていますか?
私がそれを使用できる/使用する必要がある場合、この方法の状況はどのようになりますか?
ios - NSMutableData がポインタのアドレスを変更するのはなぜですか?
メモリをすばやく事前に割り当ててラップしたいのですNSMutableData
が、ポインターを介してアクセスします。だから私はこれを持っています:
しかし、vertex
ポインターのアドレスを確認すると、別の値が表示vertexData.bytes
されるため、ポインターを使用してインデックスでデータを変更することはできません。これを回避し、メモリ ブロックを 1 つだけにする方法は?
c# - (byte* + オフセット) を byte[] に割り当てる方法は?
私は構造体を持っています:
最初のバイトはTypeCode
. 残りの 15 バイトは、UTF8 でエンコードされた文字列です。
nameBuf
以下を使用してバイト配列を埋めています。
上記のコメント付きのコードでは、while
反復なしで同じタスクを達成しようとしていましたが、機能しません (コンパイル エラーではなく、補間が間違っているだけです)。nameBuf
-loopなしで割り当てることはできますwhile
か?
更新.ではなく.
を使用することもお勧めします。(byte*)
Marshal.Copy