Skip to content

Latest commit

 

History

History
65 lines (46 loc) · 1.39 KB

undeclare_no_pointers.md

File metadata and controls

65 lines (46 loc) · 1.39 KB

undeclare_no_pointers

  • memory[meta header]
  • std[meta namespace]
  • function[meta id-type]
  • cpp11[meta cpp]
  • cpp23removed[meta cpp]
namespace std {
  void undeclare_no_pointers(char* p, size_t n);
}

この関数はC++23で削除された。

概要

特定の領域に追跡可能なポインタが存在しないことの宣言を取り消す。

要件

同じ領域が既にdeclare_no_pointers()で宣言されている。

効果

declare_no_pointers()で登録された領域の登録を取り消す。

この関数は、指定された範囲のオブジェクトが寿命を終える前に呼ばれなければならない。

戻り値

なし

例外

投げない

#include <memory>
#include <cstdlib>

int main()
{
  int* p = new int[100];
  std::undeclare_no_pointers(p); // ill-formed
  return EXIT_SUCCESS;
}
  • std::undeclare_no_pointers[color ff0000]
  • EXIT_SUCCESS[link /reference/cstdlib/exit_success.md]

バージョン

言語

  • C++11

処理系

参照