タグ

c++に関するsukepyonのブックマーク (7)

  • C++ で関数から object をどう返すか - KBDAHOLIC - やぬすさんとこ

    VC++ における NRVO について別 entry に書いた -> http://d.hatena.ne.jp/janus_wel/20100301/1267397791 昨日同じような title で entry 書いたら ( http://d.hatena.ne.jp/janus_wel/20100221/1266766850 ) comment でいいことを教えてもらった ( http://d.hatena.ne.jp/janus_wel/20100221/1266766850#c ) ので調べてみたら最終的に今回の entry の title になった。 id:k1m 、 id:tyru ありがとう。 RVO and NRVO まず klm くんの教えてくれた RVO ( Return Value Optimization の略。余談だけど Return"ed" じゃないのは "

    C++ で関数から object をどう返すか - KBDAHOLIC - やぬすさんとこ
  • C++ で気軽に時間測定がしたい - iwiwiの日記

    プログラムの一部分の所要時間をちょっと調べたいと思っても,前で時間を調べて,後ろで時間を調べて,引き算したものを出力して,と色々書かねばならず,意外と面倒です. Ruby の benchmark はいいなあと思っていたら,id:tanakh さんの PFI セミナーを思い出したので,それっぽいものを C++ で実現してみました. (2/21 19:30 頃に「もう少し便利に」のバージョンの問題点と解決について追記しました) 例 int main() { benchmark { sleep(1); } benchmark { sleep(2); } } こんな感じで書くと 1.000013 sec 2.000009 sec こんな感じで標準エラー出力に表示. ソースコード これを上に書いておけば OK です. #include <sys/time.h> struct __bench__ {

    C++ で気軽に時間測定がしたい - iwiwiの日記
  • C++向け簡易コマンドラインパーザ cmdline - 純粋関数型雑記帳

    を作りました。 http://github.com/tanakh/cmdline 何か コマンドライン引き数の解析を助けるライブラリです。同じ目的のライブラリに、Cの標準関数であるgetoptやgoogleのgflagsなどがありますが、cmdlineは適当に使えてそこそこ便利というのを目指しています。getoptは使いにくいし、usageも自分で書く必要がある。gflagsはライブラリをインストールしたり、リンクしたりちょっと大掛かり。cmdlineは、1ヘッダファイルで、コピーするだけで使えて、修正BSDライセンスで公開しているので、自由にプログラムに取り込んでいただけます。 コードサンプル #include "cmdline.h" int main(int argc, char *argv[]) { cmdline::parser p; p.add("hoge", 'h', "hog

    C++向け簡易コマンドラインパーザ cmdline - 純粋関数型雑記帳
  • C++/Boost 基礎文法最速マスター - 野良C++erの雑記帳

    参考: http://d.hatena.ne.jp/faith_and_brave/20100201/1264997004 「C++0xになると、C++03 でごちゃごちゃした部分がだいぶすっきり書けるようになる」 らしいですが、C++0xを待たなくてもBoostを使えばだいぶすっきり書けるので、 BoostでのC++入門はこんな感じだよー、という気持ちで以下略。 この記事はC言語をある程度理解していることが前提です。 1. Hello World C++/Boostでの出力はC++標準の IOStream ライブラリと Boost.Format を組み合わせて行います。 例として、C言語のprintfを用いた Hello World を、C++/Boostを使って書き直してみます。 #include <stdio.h> int main() { printf( "%s\n", "Hell

    C++/Boost 基礎文法最速マスター - 野良C++erの雑記帳
  • Faith and Brave - C++で遊ぼう

    cppmix.connpass.com C++勉強会「C++ MIX」の次回日程は、2024年2月9日(金) 19:00-21:00に決まりました。 ご参加お待ちしております。 cppmix.connpass.com 3年ぶりにC++勉強会を開催します! cpprefjp.github.io opencollective.com C++語リファレンスを提供しているcpprefjpプロジェクトで、スポンサー募集をはじめました。 スポンサー募集のサービスとしては、Open Collectiveを使用しています。このサービスの特徴としては、手数料として10%ほど引かれますが、一般社団法人などを作らずとも団体口座をもつことができ、その口座の状況がオープンになるのでオープンソースのプロジェクトで使いやすいサービスとなっています。 私たちのWebサイトは広告をつけていないので、これまでは完全に無償

    Faith and Brave - C++で遊ぼう
  • C++ Portability Guide - MDC Doc Center

    この後に、多くのマシンやコンパイラを横断して移植可能な C++ のコードを作る上で役に立つ規則・ガイドライン・TIPS の集まりが続きます。 この情報は、25 にものぼる異なるマシンと1ダース分以上の C++ コンパイラを横断して多くのコードを移植した結果として生まれたものです。これらのうちいくつかはあなたを苛立たせ、もうお手上げだと感じて「えい、<愛用の C++ 機能を追加>できないのはヘボコンパイラだ」と叫びたくなるかもしれません。しかし、これが移植性の高いコードの現実です。あなたがルールを守るなら、あなたのコードはすべての Mozilla プラットフォーム上でシームレスに動作し、新しいマシンへの移植も容易となるでしょう。 私たちは情報を最新に保つよう努力しています(例えば、ときどきコンパイラの改定で制約が取り除かれるかもしれません)。これらの tips に関する最新情報や、追加の情報

    sukepyon
    sukepyon 2009/07/28
    C++移植性ガイド
  • Let’s use doxygen!

    はじめに プログラマには、ドキュメント、とくにプログラムの内部仕様書を書くのが苦手、 という人が多い。 その理由は明らかであって、そもそも、ソースコードに (バグも含めて)*1 すべての仕様が子細もらさず書かれているのに、なぜ、さらにそれと独立した仕様書が必要なのかと、 (半ば気で) 思ってしまうからである。 ソースコードと独立にメンテナンスをしなければならないような仕様書は、 いずれソースコードと整合性が取れなくなって、無意味ならまだしも、 かえって害をなす存在となり果てることもある、ということを、 彼らは経験的に理解しているのである。 (*1) Ruby の作者である、まつもとゆきひろ氏は、 その著者『オブジェクト指向スクリプト言語 Ruby』の中の「付録C Ruby 用語集」で、 次のように書いている: ドキュメント まつもとの苦手なもの。彼は普段から「ソースがドキュメントだ。

  • 1