1
int main() 
{
    float* ptr;

    {
        float f{10.f};
        ptr = &f;
    }

    *ptr = 13.f;
    // Do more stuff with `*ptr`...
}

使用/アクセスするのに有効または未定義の動作*ptrですか?

上記の例と同様の状況をテストしたところ、ネストされたブロック内の変数の有効期間がポインターのおかげで延長されたかのようにすべてが機能するようです。

const&(const リファレンス) がテンポラリの寿命を延ばすことは知っています。これはポインターでも同じですか?

4

2 に答える 2