2014-04-01から1ヶ月間の記事一覧

CentOSインストールメモ

CentOSが必要になったのでインストールメモ virtualboxに入れました 1.ダウンロード 公式ホームページからミラーに飛んでDLしました DVDISO1をDLしました http://ftp.jaist.ac.jp/pub/Linux/CentOS/6.5/isos/x86_64/ ちなみに、DVDISO2はなぜか使用しませ…

乱数

C++

現在トークンを任意の座標に配置するプログラムを生成しています ふとランダムに配置する関数も評価用に必要かな?と思いましたので 標準ライブラリにある<random>を使ってみようと思います 乱数 rondom_deviceクラスの変数を宣言すると勝手に乱数が出来上がっている</random>…

代入演算子のconstexpr

C++

前の記事で=defaultでかってにimmutableクラスになる例を挙げましたが もちろん自分でoperator=関数を実装すれば、mutable関数にする事ができます #include <iostream> #include <utility> struct A { const int a_; A():a_(0){}; constexpr A(int a):a_(a){} ~A()=default; A(c</utility></iostream>…

代入演算子の=defaultが=deleteになるケース

C++

さっきまで嵌っていたのですが constメンバを含む関数で代入演算子を=defaultで自動実装させた場合 勝手に=deleteになってしまうようです 良く考えれば、constメンバに代入する事ができないため、妥当な処理なのですが しばらく気が付きませんでした・・・・…

LinuxMintで検索エンジンを増やす

Linux版Firefoxのメモ LinuxMint16のFirefoxのナビゲーションバーの検索窓にはデフォルトでは「DuckDuckGo」 しか入っていません。 他の検索機能(Google検索など)を使用したい場合には 別途増やす必要がありますが 以下のサイトを使用すれば、簡単に拡張で…

template classのfriend関数をクラス内部で実装する

C++

テンプレートクラスを作成し、その演算子などを非メンバ関数で定義する場合 往々にして、friend関数にする場合が多いと思います これが厄介で、まずテンプレートクラスの前方宣言をします その後にテンプレート関数として目的のfriend関数を前方宣言します …

const参照引数

以下の関数呼び出しはコンパイルエラーにも実行時エラーにもなりません template<typename T> T add(const T& x,const T& y) { return x+y; } int main() { auto a = add(10,11); //rvalue渡し } lvalue引数にrvalueを渡しているのだから エラーになりそうなものですが T</typename>…

座標系のオレオレクラスを作成中(1)

C++

せっかくなのでconstexpr対応しつつ、ちょこちょこ書いてます クラスを設計する事より、constexprを学ぶ事がメイン(本末転倒) 進捗その1 http://melpon.org/wandbox/permlink/Rnq8D2etXIvLfmfx 進捗その2 http://melpon.org/wandbox/permlink/RLVRvHYCfS…

readonlyなpublicメンバ変数

C++

普通のクラス設計でpublicメンバ変数は定義しないと思いますが 座標系のクラスを作っているときにいちいちgetterから呼び出すのに 変な違和感を覚えます readonlyなpublicメンバが欲しいです C#ではpublic readonly int x;とかpublic int x{get; private set…

Keyが文字列なオレオレmapラッパでemplace

C++

前にpush_backで作った奴のemplace版です テスト項目を増やしました http://melpon.org/wandbox/permlink/76HSVvDSWz8lhG2U 追記:dictのTがchar*の引数コンストラクタを持っている場合に対応しました http://melpon.org/wandbox/permlink/oHlbOyB12ItmOVz6 …