問題タブ [raw-pointer]

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.

0 投票する
1 に答える
701 参照

c++ - valarray への raw ポインターの昇格

互換性のために C インターフェイスを持つライブラリを開発しています

whileは、scontextを格納する生のメモリを指しnum_elements doubleます。コードの残りの部分で、ライブラリ呼び出しが終わった後に解放せずstd::valarrayに一時的に管理するを構築する戦略はありますか?context

0 投票する
2 に答える
9063 参照

c++ - 生ポインタとweak_ptrの違いは何ですか?

タイトル通り。この質問にはおそらくすでに答えがありますが、私は答えを見つけることができませんでした。

0 投票する
2 に答える
187 参照

c++ - Boost のスコープ付きポインター:生のポインターとはどういう意味ですか?

Boost のスマート ポインターに関する記事を読みました。

scoped_ptrは生のポインターに適していますが、 scoped_arrayは動的配列に役立ちます。」

しかし、「生のポインター」の意味がわかりませんでした。

どなたか説明していただけませんか?ありがとう

0 投票する
2 に答える
100 参照

c++ - 何が最高で、どのように c++ の関数で const を宣言するか

私はこれらのコードを持っています

1: ご覧のとおり、Ex xはEx classの const ではありません。およびEx const *_ex; Ex constのみへのポインターポイントです。上記のすべてが大丈夫なのはなぜですか?

2: void setEx(Ex const &ex)の constは、関数本体で ex を変更できないことを意味しますか?

3:上記のようなプロトタイプが必要な場合、メンバーポインタ変数のセッター関数を修正するにはどうすればよいですか(セキュリティ上の理由からと仮定します)?

わかった。if Ex const *_ex; Ex *_exになる 。したがって、セッター関数では、上記のように、プロトタイプが引数オブジェクトを変更しないようにする必要があります。機能体はどうなる?

0 投票する
1 に答える
1286 参照

c++ - 生ポインタのベクトルを一意のポインタのベクトルに変換する方法は?

例外やクリーンアップの心配がないように、生のポインターを取り除きたいです。簡単でシンプルな解決策はありますか (私は本当に愚かな 10 代です)、それとも価値がないのでしょうか? ありがとう!

0 投票する
1 に答える
1351 参照

python - Python ctypeは、生のオフセットで関数を直接呼び出します

Python内でRAW関数ポインタを呼び出すことは可能ですか?

例えば:

API を呼び出すと、Python は DLL + 関数ポインターを解決して機能させます。しかし、たとえば 0xDEADBEEF (関数ヘッダーに対応) などの生の関数ポインターがある場合、この生のポインターを渡す関数インスタンスを作成するにはどうすればよいですか?

コンパイルされた実行可能ファイルにあるため、関数をエクスポートすることはできませんが、次のようなことができるようにしたいと考えています。

明確にするために... C ++では、次のような方法でRAW関数を呼び出すことができます:

私はPythonで似たようなものを作りたかったのですが、おそらくctypesライブラリを使用していますか? ライブラリ内を掘り下げましたが、関数インスタンスを初期化する方法が見つかりませんでした。

ノート:

  • Python エンジンは DLL 内に組み込まれています。
  • 関数アドレスを呼び出したいプロセスに DLL を挿入します。
0 投票する
1 に答える
904 参照

cuda - 推力をキャストする方法::device_vector生ポインタで機能する

関数内でベクトルを使用できないという問題があるため、rush::raw_pointer_cast を使用することにしました。ただし、問題があります。コンパイル中にエラーが発生しました:識別子 "devvecPrzvFncFst61440Slow149998" is undefined。2 つ目は、 int *dv_ptr を関数とプロトタイプの両方に渡す方法を確実に見つけることができないことです。エラーがあります: タイプ "int *" の引数は、タイプ "int" のパラメーターと互換性がありません。私はインターネットを調べましたが、上記の問題をうまく解決する方法はありません

お時間をいただきありがとうございます

0 投票する
1 に答える
1792 参照

c++ - そこから shared_ptr を作成した後、生のポインタを削除します

私が次のことをすると、

そこで何が起こるの?shared_ptr生ポインタの削除後は無効ですか?このようなシナリオでメモリ アクセスの安全性を確保する方法はありますか?