GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • cpprefjp - C++日本語リファレンス
  • GitHub Project

This view

  • Original page
  • New address

GeezerVison is showing cpprefjp.github.io — std::pointer_safety - cpprefjp C++日本語リファレンス

  1. リファレンス
  2. memory
  3. pointer_safety

最終更新日時: 2026年09月11日 13時06分31秒 (JST)
Akira Takahashi が更新

履歴 編集

enum
<memory>

std::pointer_safety(C++11)(C++23で削除)

namespace std {
  enum class pointer_safety {
    relaxed,
    preferred,
    strict
  };
}

この列挙型はC++23で削除された。

概要

pointer_safetyは、ポインタ安全性について、その挙動/規則について確認するための列挙型である。

Safety-Derived なポインタ

"Safety-Derived なポインタ" とは、とても簡単に言うと, ::operator new で確保されたオブジェクトを指しているポインタのことである。これは、トリッキーな実装により得られたポインタと区別するために用いられる。ガベージコレクション ABI では、Safety-Derived なポインタであるかどうかを基準として動作する。

列挙値

各列挙値の説明を以下に示す.

列挙値 説明 対応バージョン
relaxed Safety-Derived なポインタもそうでないポインタも同様に扱われる。 (C++98 までと同じ) C++11
preferred relaxedと同様。ただしリークに関するレポート(ヒント)を実装することを許可する。 C++11
strict この環境では厳密な実装が行われており、Safety-Derived と 非Safety-Derived は区別される。 C++11

バージョン

言語

  • C++11

環境

  • Clang: ?
  • GCC: ?
  • Visual C++: 2010 ✅, 2012 ✅, 2013 ✅

参照

  • C++0x ガベージコレクションと到達可能性ベースリーク検知の最小支援 - Faith and Brave - C++で遊ぼう
  • N2670: Minimal Support for Garbage Collection and Reachability-Based Leak Detection (revised)
  • Garbage Collection ABI - C++ FAQ - www.stroustrup.com
  • P2186R2 Removing Garbage Collection Support
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.