7
2019 年
月 1 日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格(日本産業規格)」を「日本産業規格」に読み替えてください。
* クラス
Q
P 3 P Q
3
P 0 P &
R&
R
クラス は,算術的なオーバフローエラーを報告するのに送出する例外オブジェクトの型を定義する。
! )
効果 クラス のオブジェクトを構築する。
事後条件 ( %% . となる。
** クラス
Q
P 3 P Q
3
P 0 P &
R&
R
クラス は,算術的なアンダフローエラーを報告するのに送出する例外オブジェクトの型を定義
する。
)
効果 クラス のオブジェクトを構築する。
事後条件 ( %% . となる。
* 表明 標準 "## ライブラリは,"## プログラムの表明を記録するマクロ 及び 表明の検査を無効化するマク
ロを提供する。
表 # に,ヘッダ を示す。
表 # ヘッダ 一覧
種別 名前
マクロ
ヘッダ は,標準 " ライブラリの ( と同じとする。
参照 6 の ) 。
* エラー番号 表 ( に,ヘッダ を示す。
表 ( ヘッダ 一覧
種別 名前
マクロ 8#B@ 8E6A:8
ヘッダ の内容は,標準 " ライブラリの ( と同じとする。
参照 6 の ) 及び ) 並びに 6 追補 の 。
一般ユーティリティ ライブラリこの箇条では,標準 "## ライブラリの他の部分から利用されるライブラリ
要素を規定する。これらの要素は,"## プログラムからも利用することができる。
# で,ユーティリティ 及び 割付け子の要件,ユーティリティの構成要素,関数オブジェクト,動的メモ
) に示す)。
リ管理ユーティリティ,並びに 日付 及び 時刻のユーティリティを規定する(その一覧を表
――――― [JIS X 3014 pdf 281] ―――――
表 ) 一般ユーティリティ ライブラリ一覧
箇条 ヘッダ
要件
ユーティリティ構成要素
関数オブジェクト
メモリ
# 日付 及び 時刻
要件 では,テンプレート実引数に対する要件を規定する。 では,テンプレートを具現
するのに用いる型に対する要件を規定する。# では,記憶域割付け子に対する要件を規定する。
等価性比較 表 において, はテンプレートを具現するのに用いる型とし ,, 及び は型 の値と
する。
表 等価性比較可能な型 8 7 の要件
式 返却値の型 要件
%% に変換 %% は,等価関係の一つであり,次の条件を
可能な型 すべて満足しなければならない。
― すべての について, %% となる。
― %% ならば , %% となる。
― %% かつ %% ならば , %% 。
小なり比較 表 * において, はテンプレートを具現するのに用いる型とし ,, 及び は型 の値と
する。
表 * 小なり比較可能な型 ・7 の要件
式 返却値の型 要件
に変換可能な型 は,純弱順序関係とする( # 参照)。
コピー構築 表 において, はテンプレートを具現するのに用いる型とし, は型 の値, は型
の値とする。
表 コピー構築可能な型 7 7 の要件
式 返却値の型 要件
は, と等価とする。
は, と等価とする。
(X
0 ! のアドレスを表す。
0 ! のアドレスを表す。
省略時コンスト ラクタ省略時コンストラクタは,必須ではない。ある種のコンテナクラスのメンバ関数の
呼出し情報が,省略時実引数として省略時コンストラクタを指定していることがある。そのような呼出し情報が省略
時実引数( ( )を用いて呼ばれる場合, は,適切に定義された式でなければならない(# 参照)。
# 割付け子に対する要件 標準ライブラリは,割付け子に対する標準的な要件を規定している。ここで,割付
け子とは,記憶域割付けモデルに関する情報をカプセル化するためのオブジェクトとする。記憶域割付けモデルに関
する情報には,ポインタ型,ポインタの差分を表す型,この割付けモデルにおけるオブジェクトのサイズを表す型,
メモリの割付け 及び 解放の基本処理 10 などが含まれる。すべてのコンテナ( )は,割付け子をテンプ
レート仮引数にもつ。
表 に,割付け子が操作する型に対する要件を規定する。割付け子に対するすべての操作は,一定の時間で完了
する。表 に,割付け子の型に対する要件を規定する。
――――― [JIS X 3014 pdf 282] ―――――
7
2019 年
月 1 日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格(日本産業規格)」を「日本産業規格」に読み替えてください。
表 説明に用いる変数の定義
変数 定義
, G 任意の型
5 型 の割付け子のクラス
J 型 G の割付け子のクラス
型 0 の値
, L, + 型 50 の値
型 J の値
L( を呼び出して得られる 型 533
の値。ここで,L %% とする。
値 を変換して得られる 型 533 の値。
式! によって得られる 型 533 の値。
式 ! によって 又は を変換して得られる
型 533 の値。
J33 を呼び出して得られる
型 J33 の値 又は 。
型 533$ の値。
表 割付け子に対する要件
式 返却値の型 説明 事前条件 事後条件
533 へのポインタ
533 へのポインタ
533 0
533 0
533 と同等。
533$ 符号なし整数型 注意 その割付けモデルで最大のオブジェクト
のサイズを表すことができる型でなければならない。
533 符号付き整数型 注意 その割付けモデルにおける任意のポインタ間
の差分を表すことができる型でなければならない。
533 J 条件 すべての G( を含む。)に対し ,
G33 J33 33 は,5 となる。
( 533
( 533
( 533 条件 個の 型オブジェクトのためのメモリが割り
( 付けられる。ただし ,オブジェクトは構築されない。
が,例外を送出することもある。結果は,
ランダムアクセス反復子とする。
参考 %% . の場合,返却値は未規定とする。
( ( 使われない。) 条件 の指す位置にある 個の型 の
オブジェクトは,この呼出しの前に解体されていな
ければならない。 は,この記憶域を割り付ける
ときに に渡された値と一致していなけ
ればならない。例外を送出することはない。
参考 は,空であってはならない。
( $ 533$ 効果 533 に渡すことができる最大の値。
L %% + 効果 一方で割り当てられた領域が,他方を介して解放
可能な場合に限り を返す。
――――― [JIS X 3014 pdf 283] ―――――
表 割付け子に対する要件( 続き)
式 返却値の型 説明 事前条件 事後条件
L [% + 効果 [L %% + に等しい。
5 効果 省略時のインスタンスを生成する。
参考 デストラクタの存在は仮定されている。
5 事後条件 J %% となる。
( ( 使われない。)効果 ! を呼び出す。
( ( 使われない。)効果 ! VX を呼び出す。
上の表内の メンバ クラステンプレ ート は,実質的には型定義テンプレ ートとなる。割付け子の名前が
F6 に結合している場合,6 33G33 は,F6 G と同じ型となる。
処理系は,この規格で規定しているコンテナを実装するに当り,割付け子のテンプレート仮引数が,表
の要件
に加え,次の二つの要件も満足しているものとしてよい。
― 割付け子の型のすべてのインスタンスは交換可能である必要があり,互いに等価かど うかを比較できなけ
ればならない。
― 型定義の メンバ,, ,$ 及び は,それぞれ ,!,
!,$ 及び としなければならない。
処理系は,より一般的な記憶域モデルをカプセル化し,等価でないインスタンスを許すような割付け子を受け付け
るライブラリを提供することが望ましい。そのような処理系では,コンテナによって割付け子に課せられる要件が表
にある要件を超えてもよい。その場合,コンテナの意味規則 及び 割付け子のインスタンスが等価でない比較がで
きるアルゴ リズムは,処理系定義とする。
ユーティリティ構成要素 では,標準ライブラリの他の部分で利用される基本的な関数テンプレート 及
び クラステンプレートを規定する。
ヘッダ 一覧
Q
'' +.(+(L 演算子
P Q
[% 0 0 &
0 0 &
% 0 0 &
% 0 0 &
R
'' +.(+(+ 対 つい
L + &
L +
%% L +0 L +0 &
L +
L +0 L +0 &
L +
[% L +0 L +0 &
L +
L +0 L +0 &
L +
% L +0 L +0 &
L +
% L +0 L +0 &
L + L + P L + &
R
演算子 演算子 %% とは別に演算子 [% を定義すること,並びに 演算子 とは別に演算子 ,% 及び % を
定義することは,冗長な定義となるので,標準ライブラリは,次のテンプレートを提供している。
/ 0 -, ) ( )
注 - % が小さい場合でも,0 が,型 のオブジェクトを一つ割り付ける有効な方法となることを意図している。すな
わち,コンテナがそれ自身の 空き領域リスト を管理する必要はない。
――――― [JIS X 3014 pdf 284] ―――――
7
2019 年
月 1 日の法改正により名称が変わりました。まえがきを除き,本規格中の「日本工業規格(日本産業規格)」を「日本産業規格」に読み替えてください。
要件 型 は, で規定した意味で等価性の比較ができなければならない。
返却値 [ %%
/ 0 0 ) ( )
要件 型 は, の意味で,演算子 によって大きさの比較ができなければならない。
返却値
/ 0 /, ) ( )
要件 型 は, の意味で,演算子 によって大きさの比較ができなければならない。
返却値 [
/ 0 0, ) ( )
要件 型 は, の意味で,演算子 によって大きさの比較ができなければならない。
返却値 [
このライブラリ内では,[%,,% 又は % という演算子が宣言されているが,その要件 及び 意味規則が明示的
に書かれていない場合,その要件 及び 意味規則は,この箇条での規定に従う。
対 このライブラリは,種類の異なる 個の要素から成る対 つい
1 のテンプレートを提供している。
また,対の構築を容易にするための関数テンプレートも提供している。
L +
Q
L P &
+ P &
L &
+ &
&
L0 +0 &
G H G H 0 &
R&
効果 コンストラクタは,次のように実装されているものとしてメンバを初期化する。
3 L + QR
) ( 1)
効果 コンストラクタは, を で, を で初期化する。
/ 2( 30 /2( 30 )
効果 各メンバを,対応する実引数のメンバで初期化する。必要ならば暗黙の型変換を行う。
/ ( 10
,, /( 10) ( /( 10)
返却値 ( %% ( 00 ( %% (
/ ( 10
/ /( 10) ( /( 10)
返却値 ( ( 11 [( ( 00 ( (
/ ( 10
/( 10 4 ( 1
返却値 L + 。
注 によって,処理系は,必須ではないコピーをしないために,実引数のコピーを行わなくてもよい。
――――― [JIS X 3014 pdf 285] ―――――
次のページ PDF 286
JIS X 3014:2003の引用国際規格 ISO 一覧
- ISO/IEC 14882:2003(IDT)
JIS X 3014:2003の国際規格 ICS 分類一覧
- 35 : 情報技術.事務機械 > 35.060 : 情報技術に使用される言語
JIS X 3014:2003の関連規格と引用規格一覧
- 規格番号
- 規格名称
- JISX0001:1994
- 情報処理用語―基本用語
- JISX0002:1987
- 情報処理用語(算術演算及び論理演算)
- JISX0003:1989
- 情報処理用語(装置技術)
- JISX0004:2002
- 情報処理用語(データの構成)
- JISX0005:2002
- 情報処理用語(データの表現)
- JISX0006:1989
- 情報処理用語(データの準備及び取扱い)
- JISX0007:2001
- 情報処理用語―プログラミング
- JISX0008:2001
- 情報処理用語―セキュリティ
- JISX0009:1997
- 情報処理用語(データ通信)
- JISX0010:1987
- 情報処理用語(操作技法及び機能)
- JISX0011:1989
- 情報処理用語(処理装置)
- JISX0012:1990
- 情報処理用語(データ媒体,記憶装置及び関連装置)
- JISX0013:1998
- 情報処理用語(図形処理)
- JISX0014:1999
- 情報処理用語―信頼性,保守性及び可用性
- JISX0015:2002
- 情報処理用語(プログラム言語)
- JISX0016:1997
- 情報処理用語(情報理論)
- JISX0017:1997
- 情報処理用語(データベース)
- JISX0018:1989
- 情報処理用語(分散データ処理)
- JISX0019:1994
- 情報処理用語―アナログ計算
- JISX0020:1992
- 情報処理用語(システム開発)
- JISX0021:1987
- 情報処理用語(プロセスインタフェース)
- JISX0022:1989
- 情報処理用語(計算器)
- JISX0023:1995
- 情報処理用語(テキスト処理)
- JISX0024:1998
- 情報処理用語(計算機統合生産)
- JISX0025:1994
- 情報処理用語―ローカルエリアネットワーク
- JISX0026:1995
- 情報処理用語(開放型システム間相互接続)
- JISX0027:1995
- 情報処理用語(オフィスオートメーション)
- JISX0028:1999
- 情報処理用語―人工知能―基本概念及びエキスパートシステム
- JISX0031:1999
- 情報処理用語―人工知能―機械学習
- JISX0032:1999
- 情報処理用語―電子メール