タグ

c++とC++に関するvoidy21のブックマーク (147)

  • Cプログラミング診断室 - 藤原博文

    はじめに 開院準備 昔むかし/ レベル差/ 教育/ ネットワーク/ 情報集め/ 隠すことについて/ プログラムコンテスト/ ドキュメント/ 楽するように/ 手抜きと下手の違い/ 開院 第1部 外来 第1章 普通の初心者 最初から充実した(!?)プログラムが登場 関数を短くし、コメントを改善する 上手になる秘訣/ プログラムの紹介/ 何だ、このプログラムは!!/ 短くするには/ コメントについて/ 無駄な努力をやめよう/ 名前/ 気になる個所/ 修正プログラム/ 課題/ まとめ 第2章 これでもプロ 売りものであるにもかかわらず、超きたない! 構造的な欠陥の指摘〜引数、ポインタの活用 プログラムの紹介/ 「超」基的問題点/ 関数分解/ 構造的欠陥/ 引数を使おう/ ポインタ/ その他/ まとめ(修正プログラム) 第3章 上司が問題 まさに驚異的なプログラムの見というべき 内容の修正から、

  • 高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」

    はじめに 大規模なデータを扱うアプリケーションでは、速度とともに作業領域量も大きな問題となります。作業領域がメインメモリに収まらない場合、スワッピングが発生し、大幅な速度低下につながります。そのため近年、データ構造は高速なだけでなく、作業領域量が小さいことも求められています。今回紹介するのは2003年に提案されたデータ構造、wavelet tree(以下「WT」と表記)です。WTは圧縮索引やSuccinct Data Structureなど、データをコンパクトに表現する際に重要なデータ構造です。WTは文字列T[0...n-1]が与えられた時、次の2つの操作を定数時間でサポートします。 rank(p, c)――T[0...p]中のcの出現回数を返す select(i, c)――(i+1)番目のcの位置を返す WTの作業領域量は、文字列をそのまま保存した時の約2倍程度です。 対象読者 C++

    高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」
  • Parallel Pattern Library - Faith and Brave - C++遊ぼう

    VC++10(VS2010)では、 Parallel Pattern Library (PPL) というのが提供されます。 これは並列処理を行うためのライブラリです。 インクルードするのは で、名前空間は Concurrency です。 まず、 std::for_each の並列処理版である parallel_for_each template <typename InputIterator, typename Function> Function parallel_for_each(InputIterator first, InputIterator last, Function func); // ※当は _Input_iterator _First, ... のようになってますが、読みやすいように勝手に直してます。 #include <iostream> #include <vec

    Parallel Pattern Library - Faith and Brave - C++遊ぼう
  • 変電工 - Google C++スタイルガイド日本語訳

  • C/C++ リファレンス

  • コーディング規則 - Stellarium

    今までに、プログラマーとして手伝ってくれる人の多くが、私たちのコーディング規則とそのガイドラインを明らかにするよう求めてきました。これまでの変遷によって、現在のStellariumのコードの全てがこの規則に従っているわけではありませんが、これからコードを追加・修正する場合は、以下の規則に従うようにしてください。 文法や命名規則 ソースコードには全てASCIIコードを使用してください。'é'や'ö'のような文字は、コードに直接書くと可搬性が下がります。そのような文字を使う場合は、gettextを利用すべきでしょう。 変数名やコメントは英語で書いてください。 特に普段日語を使っている方は、意図せずに非ASCII文字を書き込んでしまう場合があります。常に日本語入力がオフになっているかに注意してください。 クラス名は名詞を使い、最初の文字は大文字で、次に続く単語の先頭文字も大文字、それ以外は小

    voidy21
    voidy21 2007/12/21
  • C/C++ Technical Documents

    C++ 寄稿記事 επιστημη 氏から寄稿していただいた、開発者の方々にお役に立つテクニカルドキュメントです。Articles、References、Miscelaneousに分かれて説明しています。初心者の方からプロの方まで役に立つ読み物と資料集です。是非、開発のお役にお立て下さい。 Articles: 読み物 References: 資料集 Miscelaneous: 番外編