タグ

ブックマーク / qiita.com/termoshtt (14)

  • ごく簡単なcmakeの使い方 - Qiita

    なんかcmakeの使い方わからんかった、という記事を最近見たのでごく簡単な部分をまとめる。 単一のソースファイルの場合

    ごく簡単なcmakeの使い方 - Qiita
    kasumani
    kasumani 2016/09/05
    ごく簡単なcmakeの使い方 なんかcmakeの使い方わからんかった、という記事を最近見たのでごく簡単な部分をまとめる。 を実行すれば実行ファイルMainが作成される。 コンパイルフラグが必要な場合は2通り方法がある: Tags: from
  • cmakeとgit submoduleで他のプロジェクトを簡単にimportする - Qiita

    複数のプロジェクトで共通して必要なプロジェクトや、 外部のライブラリを使用したいが、システムにインストールしたく無い場合にどうするか。 cmake + gitを用いれば簡単に解決できます。 Requirements C++プロジェクトprojに外部のC++プロジェクトsubを使用する場合を例に取って考えます。 上述のように以下の方法を実行するには projがcmakeで管理されている事 proj, subがgitで管理されている事 subがcmakeで管理されているか、ヘッダのみで構成されているテンプレートライブラリである事 が必要です。 Procedure まずgitのリポジトリは yourhost:repos/proj.git anotherhost:repos/sub.git のようになっているとします。各自の環境に合わせて読み替えてください。 アイデアは以下の通りです。 git s

    cmakeとgit submoduleで他のプロジェクトを簡単にimportする - Qiita
    kasumani
    kasumani 2014/08/22
    cmakeとgit submoduleで他のプロジェクトを簡単にimportする 複数のプロジェクトで共通して必要なプロジェクトや、 外部のライブラリを使用したいが、システムにインストールしたく無い場合にどうするか。 cmake + gitを用いれば
  • Boost.Rangeの速度 - Qiita

    便利なBoost.Range でもお高いんでしょう? という事で簡単なコードで速度測ってみた。 ちょっと簡単すぎるループな感はある。 #include <chrono> #include <boost/range/irange.hpp> #include <boost/range/adaptors.hpp> namespace A = boost::adaptors; namespace ch = std::chrono; unsigned long native(unsigned int N) { unsigned long sum = 0; for (unsigned long i = 0; i < N; ++i) { if (i % 2 != 0) continue; sum += i + 1; } return sum; } unsigned long range(unsigned

    Boost.Rangeの速度 - Qiita
    kasumani
    kasumani 2014/07/26
    Boost.Rangeの速度 便利なBoost.Range でもお高いんでしょう? という事で簡単なコードで速度測ってみた。 ちょっと簡単すぎるループな感はある。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket July 26, 2014 at 06:35PM via IFTTT
  • 保存時に勝手にclang-formatする - Qiita

    表題の通り、現在編集中の*.[ch]ppファイルを保存時に自動的clang-formatで整形します .vimrcに以下を追加します function! s:clang_format() let now_line = line(".") exec ":%! clang-format" exec ":" . now_line endfunction if executable('clang-format') augroup cpp_clang_format autocmd! autocmd BufWrite,FileWritePre,FileAppendPre *.[ch]pp call s:clang_format() augroup END endif システムにclang-formatがインストールされていればvim側はプラグイン等一切必要ありません。 2014/6/25追記 不具合を

    保存時に勝手にclang-formatする - Qiita
    kasumani
    kasumani 2014/06/25
    保存時に勝手にclang-formatする システムにclang-formatがインストールされていればvim側はプラグイン等一切必要ありません。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket June 24, 2014 at 11:46PM via IFTTT
  • std::moveまとめ(link集) - Qiita

    c++11の主要なtopicであるムーブセマンティクスは非常に多くの方が解説されいます。 しかし初学者が一つの記事で理解できるようにはなっていないのが現状です。 そこで以下に順番に読むとわかりやすいリンクを挙げていきます。 Return value optimization : Wikipedia 先に知っておく方が良い基礎知識。 C++11は関係ありません。 #include <iostream> struct C { C() {} C(const C&) { std::cout << "A copy was made.\n"; } }; C f() { return C(); } int main() { std::cout << "Hello World!\n"; C obj = f(); } (Wikipediaより転載)の挙動に自信が無い人は必読です。 とはいえ最適化は標準規格で

    std::moveまとめ(link集) - Qiita
    kasumani
    kasumani 2014/05/24
    C++0x 標準ライブラリ完全解説 〜 No.02 std::move, : 野良C++erの雑記帳 gintenlabo氏の記事。 こちらも同様にstd::moveの基本事項を説明しています。 ムーブの説明自体はyohhoyさんのものの方がわかりやすいと思いますが、 こちらでは
  • C++で簡単非同期処理(std::thread,std::async) - Qiita

    C++11では<future>ヘッダが導入され、 簡単に非同期の処理が実装できるようになった。 以下では用途毎に実装方法をまとめる。 thread間での同期の話はせず、あくまで完全に非同期な処理についてまとめる。 戻り値が必要ない場合(Thread-per-message pattern) とりあえず非同期に実行できればいい場合。 実行時間を短縮するために複数の独立な処理を並列に実行するなどの応用が考えられる。 std::threadを使用する。最も基的な使い方は以下の通りである: auto th1 = std::thread([]{ do_long_work(); }); do_another_things(); th1.join(); std::threadの引数に実行したい関数を渡す。 関数に引数を与えたい場合は、std::thread(func, arg)のように行う。 プログラ

    C++で簡単非同期処理(std::thread,std::async) - Qiita
    kasumani
    kasumani 2014/05/18
    C++で簡単非同期処理(std::thread,std::async) C++11ではヘッダが導入され、 簡単に非同期の処理が実装できるようになった。 以下では用途毎に実装方法をまとめる。 thread間での同期の話はせず、あくまで完全に非同期な処理につい
  • sshの暗号化はRSAでいいのか? - Qiita

    で生成されるkeyはデフォルトで2048bitです(最小が768bit)。 この暗号はどのくらい強力なのか? ざっくりいって、この暗号はいつまで使えるのか? という事を調べます。 免責 以下の解析は非常にざっくりしているので参考程度に考えてください。 私は一切の責任を負えません。 RSA Factoring Challenge RSA Factoring Challenge(Wikipadia)にRSA secuirty (株)の実施した RSAの暗号解読チャレンジの記録が載っています。このチャレンジは1991から2007まで開催されたそうです。 ここの表から単にkeyの長さ(bit)と解読された年を切り出します: 330 1991 364 1992 397 1993 426 1994 426 1996 463 1999 496 2004 512 1999 563 2009 576 200

    sshの暗号化はRSAでいいのか? - Qiita
    kasumani
    kasumani 2014/03/23
    sshの暗号化はRSAでいいのか? で生成されるkeyはデフォルトで2048bitです(最小が768bit)。 この暗号はどのくらい強力なのか? ざっくりいって、この暗号はいつまで使えるのか? という事を調べます。 Tags: ifttt, kasumaniのストッ
  • zaw(zsh anything.el-like widget)による圧倒的な操作性の向上 - Qiita

    zaw - zsh anything.el-like widget zawはEmacsにおけるanything.el, helm.el, あるいはvimにおけるunite.vimに対応するpluginです。 履歴の検索 ディレクトリの移動 gitの操作 (branchの切替, fileのステージ等) processの管理 (PIDの取得, kill) tmux (attach) といったシェルでするべき事の大半がこのプラグインで非常に直感的に操作できます。 残念ながら、私には言葉でこのプラグインの素晴しさが伝えられないので 上のgifアニメをご覧ください。 anything.elやunite.vim等を使用した事のある方なら馴染みのある考え方だと思いますが、 zawでは source に action を結び付けます。 ディレクトリの移動においては source は最近訪れたディレクトリの

    zaw(zsh anything.el-like widget)による圧倒的な操作性の向上 - Qiita
    kasumani
    kasumani 2014/03/20
    zaw(zsh anything.el-like widget)による圧倒的な操作性の向上 といったシェルでするべき事の大半がこのプラグインで非常に直感的に操作できます。 残念ながら、私には言葉でこのプラグインの素晴しさが伝えられないので 上のgif
  • コマンドラインならファイルの検索がこんなに簡単に! (zsh編) - Qiita

    引数が多くて機能を把握できないfind。 でも大丈夫、zshがあればそんなの覚えなくても簡単! 現在のディレクトリ以下のPDFファイルを一覧する

    コマンドラインならファイルの検索がこんなに簡単に! (zsh編) - Qiita
    kasumani
    kasumani 2014/03/15
    コマンドラインならファイルの検索がこんなに簡単に! (zsh編) 引数が多くて機能を把握できないfind。 でも大丈夫、zshがあればそんなの覚えなくても簡単! Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket March 15, 2014 at 02:0
  • 一人でBoost勉強会:Concept Check #2 - Qiita

    Note for Boost Concept Check Library (BCCL) 家ドキュメント(v1.55) 日語ドキュメント(v1.30) Reference (v1.55) 以下の記述は公式のドキュメントを自分なりに要約した物であり、 和訳を目指す物ではない。 また内容を保証するものでもない。 Index - #1 Concept Checking Introduction - #2 Using Concept Checks - #3 Creating Concept Checking Classes - #4 Concept Covering and Archetypes Using Concept Checks BOOST_CONCEPT_ASSERT() コンセプトを満しているかを確認するマクロ。 cassertのassertに相当する。 #include "boos

    一人でBoost勉強会:Concept Check #2 - Qiita
    kasumani
    kasumani 2014/03/08
    一人でBoost勉強会:Concept Check #2 Using Concept Checks BOOST_CONCEPT_ASSERT() コンセプトを満しているかを確認するマクロ。 cassertのassertに相当する。 boost_concept_assert.cpp #include &quot;boost/concept_check. Tags: ifttt, kasumaniのストックした投稿 - qiit
  • 一人でBoost勉強会:Concept Check #1 - Qiita

    Note for Boost Concept Check Library (BCCL) 家ドキュメント(v1.55) 日語ドキュメント(v1.30) Reference (v1.55) 以下の記述は公式のドキュメントを自分なりに要約した物であり、 和訳を目指す物ではない。 また内容を保証するものでもない。 Index - #1 Concept Checking Introduction - #2 Using Concept Checks - #3 Creating Concept Checking Classes - #4 Concept Covering and Archetypes Concept Checking Introduction Conceptが必要な理由 間違ったテンプレート引数によるコンパイルエラーが非常に難読である。その間違ったテンプレート引数使用された位置でなく

    一人でBoost勉強会:Concept Check #1 - Qiita
    kasumani
    kasumani 2014/03/08
    一人でBoost勉強会:Concept Check #1 以下の記述は公式のドキュメントを自分なりに要約した物であり、 和訳を目指す物ではない。 また内容を保証するものでもない。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket March 08, 201
  • zshにおける連想配列の使い方 - Qiita

    % typeset -A map # 連想配列型を定義 % echo ${(t)map} # mapの型を表示 association # 連想配列の型はassociation % map=(a 10 b 20) # mapの定義、(key1 val1 key2 val2)のようにする % echo $map 10 20 # 値のみが表示される % echo $map[a] # key(a)に対応するvalue(10)が表示される 10 % echo ${(k)map} # (k)は連想配列のkeyの一覧を取得するフラグ a b % map=("a*" 10 "b*" 20) # keyにパターンを記述できる % echo ${(k)map} b* a* % echo $map[abcd] # そのままではパターンマッチを行わない % echo $map[(k)abcd] # keyの部分

    zshにおける連想配列の使い方 - Qiita
    kasumani
    kasumani 2014/02/24
    zshにおける連想配列の使い方 ここで(t),(k)は変数展開フラグと呼ばれるもので、 zshの本6.7節で解説されている。 こちらの(k)は添字用変数展開フラグと呼ばれ、 パターン(上述の&quot;a*, b*&quot;)にマッチするキーの値を返す。 T
  • 2D plot in matplotlib - Qiita

    matplotlibで2次元プロットを作成する。 gnuplotで表示が遅くなる場合(1000x1000)くらいでも余裕で動く。 ここで2次元プロットと言っているのは、 座標(x,y)におけるスカラ量f(x,y)を表示する図の事である。 基編 import numpy from matplotlib import pyplot data = numpy.random.rand(128,128) # 128x128の2次元numpy.arrayに乱数を入れて生成 pyplot.imshow(data) from numpy import arange, meshgrid from math import pi from matplotlib import pyplot x = arange(0,2*pi,2*pi/128) y = arange(0,2*pi,2*pi/128) X, Y

    2D plot in matplotlib - Qiita
    kasumani
    kasumani 2014/02/01
    2D plot in matplotlib matplotlibで2次元プロットを作成する。 gnuplotで表示が遅くなる場合(1000x1000)くらいでも余裕で動く。 ここで2次元プロットと言っているのは、 座標(x,y)におけるスカラ量f(x,y)を表示する図の事である。 Tags: feedl
  • vimfilerの設定 - Qiita

    let g:vimfiler_ignore_pattern='\(^\.\|\~$\|\.pyc$\|\.[oad]$\)' 無視するファイルのパターン。 これにフィットすると隠しファイル扱いになる。 ファイラで開いても仕方無いバイナリファイルは無視に指定した。 標準キーマップでは.で隠しファイルが表示される。 .gitignoreのやつを勝手に追加してくれたりすれば便利なのにな。

    vimfilerの設定 - Qiita
    kasumani
    kasumani 2014/01/21
    vimfilerの設定 無視するファイルのパターン。 これにフィットすると隠しファイル扱いになる。 ファイラで開いても仕方無いバイナリファイルは無視に指定した。 標準キーマップでは.で隠しファイルが表示される。 Tags: feed
  • 1