タグ

ブックマーク / yohshiy.blog.fc2.com (5)

  • C++ のコピーコンストラクターと代入演算子 | プログラマーズ雑記帳

    C++ でクラスを作ったり、メンバーを追加した場合、必ずやらなければならないことがあります。 それは 「コピーコンストラクター と 代入演算子 が必要か適切に判断する」ということです。 また、必要だったとして、これらを書く場合にも様々な注意点やテクニックがあります。 今回はコピーコンストラクターと代入演算子に関する話題についてまとめてみたいと思います。 なお、今回は Effective C++ の影響をかなり受けています。 Effective C++ と同じような内容を書くと問題あるかと思い、 それらに関してはサワリとの項の参照先だけ書いています。 (項は第 2 版のものです) コピーコンストラクター、代入演算子 とは まず、この 2 つについて、概要を説明します。 コピーコンストラクターは 同じクラスのオブジェクトを引数にとるコンストラクター を指します。 Foo a; Foo b(a

    iww
    iww 2022/04/01
  • Redmine入門 - バグ管理システムとしての使い方 | プログラマーズ雑記帳

    Redmine の基的な使い方であるバグ管理システムとしての使用法を説明します。 ワークフロー Redmine を使用するためにはワークフローを理解する必要があります。 ワークフローというのはチケットのステータスの変化の流れで、トラッカーとロールによって変わってきます。 ただし、デフォルトの設定ではバグ、機能、サポートの 3 つのトラッカーで同じフローとなっています。 このワークフローは通常、システム管理者しか確認できません。 Redmine インフォメーション プラグインがインストールされていれば、 [情報] → [ワークフロー] のメニューからワークフローを表示させることが出来ます。 また、システム管理者でも表でしか確認できないので、流れを理解するのはなかなか難しいですが、プラグインではさらにワークフローを図で表示することもできます。 参考書やサイトにもフロー図が載っているものは多い

    iww
    iww 2018/12/25
  • Google Chart Tools - 折れ線グラフ、面積グラフ | プログラマーズ雑記帳

    今回は Google Chart Tools の折れ線グラフ、面積グラフの紹介です。 折れ線グラフ(Line Chart) Google Chart Tools では折れ線グラフには Line Chart を使用します。 Line Chart は初回にあげたので、 今回はデータの扱いについて補足します。 Google Chart Tools の使い方 | プログラマーズ雑記帳 データ形式 折れ線グラフでは先頭列を文字列にすると 棒グラフ、 数値にすると 散布図 のような扱いになります。 var data = google.visualization.arrayToDataTable([ [ '', '売上高', '営業利益', '経常利益'], ['2004', 1000, 400, 380], ['2005', 1170, 460, 400], ['2006', 660, 1120, 9

  • 暗算で 16 進数を 2 進数に変換する方法 | プログラマーズ雑記帳

    C 言語などでビットの定義を行う場合、 ビットシフト(<<)も使いますが、 16 進数で表記することも多いです。 何故 16 進数で記述するかというと 16 進数は 2 進数に変換しやすいためです。 C 言語でゴリゴリ書くのが主流だった時代は、 結構みんな独自の計算方法を持っていて、すぐに 2 進数に変換していました。 しかし、最近ではこの変換をできない人が増えてきた気がします。 そこで今回は私がやっている暗算で 16 進数を 2 進数に変換する方法を紹介したいと思います。 ただ、魔法のような便利な方法があるわけではなく、掛け算における九九のように暗記よる部分が多いです。 進数表記の基礎 まず最初に進数表記について簡単に説明します。 進数表記の種類としては 16, 10, 8, 2 進数などがあり、 通常、私達が使っているのは 10 進数です。 2, 8 進数などの場合、たまに 2, 8

    iww
    iww 2015/07/16
    なんだかんだいってもプログラマーって暗算するまでもなく直接2進表記に見える
  • 出力用シフト演算子(<<)のオーバーロード | プログラマーズ雑記帳

    C++ の小技の紹介です。 C++ の標準ライブラリでは cout などにシフト演算子(<<)を使って出力します。 std::cout << "Hello World!!" << std::endl; これは iostream の上位クラスである ostream のシフト演算子(<<)のオーバーロードで実現されているのですが、これを自分で定義したクラス、構造体、列挙型などに対しても定義しておくと便利です。 これを定義しておくだけで、標準出力(cout), ファイル(ofstream), 文字列(stringstream)などにも自分で作ったクラス等を文字列として出力することが出来ます。 どうやるかというと、例えば点の構造体 Point があったとすると以下のように ostream クラスとシフト演算子(<<)の 2 項演算をオーバーロードします。 std::ostream &operato

    iww
    iww 2012/07/01
  • 1