参照からポインタを取得する方法は?
2023-09-08 12:36:25
質問
ポインタと参照について多くの関連する質問があるようですが、私が知りたいことを見つけることができませんでした。基本的に、オブジェクトは参照によって渡されます。
funcA(MyObject &objRef) { ... }
関数内で、参照ではなく、そのオブジェクトへのポインタを取得することはできますか?もし私が参照を扱えば
objRef
へのエイリアスとして扱います。
MyObject
の別名として使用すると
&objRef
は実際に MyObject へのポインタを与えてくれるのでしょうか?それはありそうもないように思われる。私は混乱しています。
編集:よくよく調べてみると
objRef
は、私が必要とするオブジェクトへのポインタを返してくれます - ほとんどの人が正しい情報/答えをくれました、ありがとう。 私は、このケースで最も例示的であると思われる答えに従いました。
どのように解決するには?
はい、参照にAddress-of演算子を適用することは、元のオブジェクトのアドレスを取得することと同じです。
#include <iostream>
struct foo {};
void bar( const foo& obj )
{
std::cout << &obj << std::endl;
}
int main()
{
foo obj;
std::cout << &obj << std::endl;
bar( obj );
return 0;
}
結果
0x22ff1f
0x22ff1f
関連
-
[解決済み】識別子 "string "は未定義?
-
[解決済み] 変数サイズのオブジェクトが初期化されないことがある c++
-
[解決済み] 文字列の単語を反復処理するにはどうすればよいですか?
-
[解決済み] 1ビットのセット、クリア、トグルはどのように行うのですか?
-
[解決済み] C++11では、標準化されたメモリモデルが導入されました。その意味するところは?そして、C++プログラミングにどのような影響を与えるのでしょうか?
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] Linux上で動作するC++コードのプロファイリングを行うにはどうすればよいですか?
-
[解決済み] スマートポインターとは何ですか?
-
[解決済み] なぜ、オブジェクトそのものではなく、ポインタを使用しなければならないのですか?
-
[解決済み】ポインタとリファレンス
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】識別子 "string "は未定義?
-
[解決済み] error: 'ostream' does not name a type.
-
[解決済み】 != と =! の違いと例(C++の場合)
-
[解決済み】抽象クラス型の無効なnew-expression
-
[解決済み】「corrupted size vs. prev_size」glibc エラーを理解する。
-
[解決済み】デバッグアサーションに失敗しました。C++のベクトル添え字が範囲外
-
[解決済み】浮動小数点数の乱数生成
-
[解決済み】C++ - ステートメントがオーバーロードされた関数のアドレスを解決できない。
-
[解決済み] スタックアロケーションにより初期化されていない値が作成された
-
[解決済み] 現在のCまたはC++の標準文書はどこにありますか?