タグ

ブックマーク / next1.cc.it-hiroshima.ac.jp (3)

  • 標準C++ベクタ

    配列型文字列と比べるとC++ストリング型オブジェクトは使いやすく実行エラーの起こる回数が少ない.これと同じことが配列と標準C++ベクタ型オブジェクトの間でもいえる.つまり,C++ベクタオブジェクトは配列をもっと使いやすくしたものである.vectorクラステンプレートは標準C++ライブラリのコンテナのプロトタイプである. vectorクラステンプレートはvectorヘッダで定義されている. 例題 14.1   次のプログラムは,8個の文字列を持つベクタとそれらを呼び出すload()関数,そして表示するprint()関数を構築している.実行するとどんな結果が得られるか. #include <iostream> #include <string> #include <vector> using namespace std; void load(vector<string>&);

    crk
    crk 2009/02/25
  • 標準C++文字列

    前節で学んだ文字配列はC++の中の重要な部分である.文字配列はデータの編集に効率のよい道具を提供してくれる.ただ,この効率の良さは,ナル文字を用いていることによる動作誤差というリスクを背負っている. そこで,C++には標準C++ストリング(standard C++ strings)とよばれ,文字配列に代わる動作誤差の少ないものがある.文字列の長さを文字列の中に含ませることにより,ナル文字に頼る必要を無くしたものである. 書式付入力(Formatted Inputs) C++での入力はistreamオブジェクトcinを通り,出力はostreamオブジェクトcoutを通る.istreamクラスはcinのようなオブジェクトの行動を定義する.最も顕著な行動は抽出演算子(extraction operator)(または入力演算子) の使い方であろう.抽出演算子はistreamオブジェクトから文

  • ポインタと参照

    まずは,C++ではどのように実行ファイルが作られるのかを知る必要がある.エディタで書いたプログラム(ソースプログラム(source program))をコンピュータの理解できる機械語に翻訳する(コンパイル(compile)).このときできたプログラムをオブジェクト(object)という.このオブジェクトモジュールを連結させることをリンク(link)といい,連結させるプログラムをリンカ(linker)という.こうして実行可能形式ファイル(ロードモジュール(load module))ができる.ロードモジュールはファイルとしてハードディスクなどに格納されているで主記憶装置(メモリ)に展開しなければならない.この動作をロード(load)といい,OSによって行われる.ロードされたロードモジュールは,その先頭から実行を開始される.一般に,メモリは連続して並んだバイトの列で,ロードモジュールはメモリ上に

  • 1