2017-01-01から1年間の記事一覧
nenechi.hatenablog.com の続き。 binary.txt ファイルにあらかじめ Hello My name is robot と入れてあります。 そのファイルを読んで値を16進数で16桁づつ表示する。 ------------------------------------------------ const int WIDTH = 16; int main(){…
ファイルを扱うのに便利な標準ライブラリ #include <cstdio> 便利な関数が入っている #include <fstream> fstreamクラスが入っている Xcode 8.3.3 で file.open で作ったはずのファイルがどこにもない・・・ ・・できた。 xcodeでビルドした時にxcode内でいつも結果を見てるか</fstream></cstdio>…
革命だ!! 文字列リテラルめんどくさいってずっと考えてたけど、こんな便利なものがあるなんて、class の勉強乗り越えてよかった・・・ いや、ど素人じゃなきゃこんなん常識なんでしょうけど、わたしど素人なので。 C++に標準で用意されているstringクラス…
nenechi.hatenablog.com の続き 意図としては派生クラスを宣言時に基底クラスのコンストラクタが動いた段階で SetBase関数 ( 純粋仮想関数 ) を呼び出して当該派生クラスのSetBase関数を呼び出させようとした。 -------------------------------------------…
nenechi.hatenablog.com の続き。 書いてる途中にブラウザ戻っちゃった。 記事消えた。 やる気なくなる・・・ 一からやり直し。 内容だけ書こう。 アップキャストについて。 アップキャストとは関数の仮引数に基底クラスの型で参照をする方法。 参照先は派生…
nenechi.hatenablog.com 続きです。 次はclass の継承について勉強。 共通部分がある class はその共通部分だけの class を作りそれを親として 子の class に継承できる。 親クラスの事を基底クラス 子クラスのことを派生クラスと呼ぶ。 これが
nenechi.hatenablog.com の続きです。 配列のメンバ変数を持っている class のコンストラクタを作ったりしました。 んで、配列のメンバ関数はポインタで作成するのですがその class をそのまま引数にした関数を作ってしまうとやばいらしい。 なんでも、class…
class 内に自分で作った引数なしのコンストラクタ 「デフォルトコンストラクタ」 class 内に自分で作った引数のあるコンストラクタ 「コンストラクタ」 (引数付きコンストラクタ) class 内に自分でコンストラクタを作らなかった 「自動で生成されるデフォ…
class は構造体のもっとどエライもの。 最初に構造体と同じようなメンバで作る。 --------------------------------------------------- class Data { public: char name[64]; int age; double higth; }; -------------------------------------------------…
プログラム実行中に動的に変数を作る。 そのために使うのが new と delete 。 動的に変数を作るとはどういうことかというと ----------------------------------------------- int main(){ int size; cin >> size; int* p = new int[size]; } --------------…
ソースファイルが複数ある場合の情報の共有関係のことをリンケージという まず勘違いしていたのはリンケージは#includeされているファイルかどうかとか関係ないということ。 では、 まずファイルを超えて利用可能なものを外部リンケージ ファイルを超えられ…
(注)externはまだ混乱するので今のぐちゃぐちゃが解決してから考える。 関数の外で宣言された変数はグローバル変数 どこからでも使用可能でプログラムが終了するまで保持される。 -------------------------------------------- int gh;//グローバル変数宣言…
char型 まずは何もしないでバイト数表示 -------------------------------------------- int main(){ char t; cout << sizeof t << endl; } (結果) 1 -------------------------------------------- 1バイトあるらしい。 次に 'a' を入れて見る --------…
関数を作成する場合に ------------------------------------ void Test(int x){ //カッコ内が仮引数 cout << x << endl; } int main(){ Test(10); //カッコ内が実引数 } (結果) 10 ------------------------------------ の場合は 10 になる。 ここで勘違…