C/C++ ポインタ入門 > リストクラス > サイズ指定コンストラクタ
Nobuhide Tsuda
Jan-2014
サイズ指定コンストラクタ:
List::List(int sz, int v)
: m_size(sz)
, m_dummy(new Node)
{
link(m_dummy, m_dummy);
for (int i = 0; i < m_size; ++i) {
append(m_dummy, new Node(v)); // 値vを持つノードを生成し、末尾に追加
}
}
解説:
- ダミーノードを生成し、m_dummy がそれを指すよう初期化
- m_size はszに初期化
- link() 関数を使い、ダミーノードを自分自身とリンクさせ、リストを環状にする
- append() 関数を使い、値vを持つノードを末尾にsz個追加します。
前:
| 次: