2010年10月8日金曜日

namespaceの代入 (C++)

namespaceを代入して定義することができる

例えば

void func()
{
    namespace bm = boost::mpi;

    bm::environment e(...


なんて具合に使える。便利!

Ubuntu (Linux)からWindowsの共有にマウント

これを見た。

http://d.hatena.ne.jp/masa138/20090406/1238952212

2010年10月7日木曜日

PDFを結合 - pdftk

pdftkが便利

Ubuntuなら

sudo apt-get install pdftk

やり方


pdftk a.pdf b.pdf c.pdf cat output abc.pdf
a.pdf b.pdf c.pdf のpdfが結合してabc.pdfに出力されます。

ここに全部書いてあります。結合と分割両方、
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/928splitpdf.html

ソースコードをハイライトしてPDFに変換して印刷

ソースコード --> PS


LinuxでソースコードをPS(post script)化するのに便利なソフト
Enscript

Ubuntuだと

sudo apt-get install enscript

でインストールできる


source.cppをPSしたいとき


enscript -o source.cpp.ps source.cpp
これだとグレーだし、もっとカッコよくしたい。
強調表示とかヘッダーをカッコよく

enscript --highlight=cpp --color --line-numbers --fancy-header -o source.cpp.ps source.cpp

--highlight=***
***はいろんな言語に対応している

PS --> PDF

ps2pdf source.cpp.ps
source.cpp.pdf
ができます

こんな感じのシェルスクリプトをつくった

enscript --highlight=cpp --color --line-numbers --fancy-header -o $1'.ps' $1
ps2pdf $1'.ps'
rm $1'.ps'

2010年10月6日水曜日

std::abs std::fabs (C++)

#include <cstdlib>
のabsはint型用。
#include <cmath>
のabsはdoubleとかfloatとかオーバーロードしてるらしい!