タグ

c++に関するFunnyBunnyDizzyのブックマーク (21)

  • C/C++のユニットテストフレームワーク CppUTest が便利 – Rest Term

    ## ソースコードの取得 $ git clone git://github.com/cpputest/cpputest.git $ cd cpputest $ mkdir workspace && cd workspace ## cmakeを実行 ## お試しなのでユーザーディレクトリ以下にインストール、カバレッジ(gcov)をサポート $ cmake28 -DCMAKE_INSTALL_PREFIX=./install -DCOVERAGE=ON .. ------------------------------------------------------- CppUTest Version 3.4 Current compiler options: CC: /usr/bin/cc CXX: /usr/bin/c++ ... 省略 Features configure in CppU

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2015/08/04
    これはすごくよさそう。iOS/AndroidJNiで使えるかなぁ。
  • 速いしスケールする並列CSVパーサ作った紆余曲折話 - 俺とお前とlaysakura

    この記事は↓に移転しました。 laysakura.github.io

    速いしスケールする並列CSVパーサ作った紆余曲折話 - 俺とお前とlaysakura
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2014/12/31
    madviceでオンメモリにプリフェッチすることでフォールトを軽減して高速化すると。どんくらいメモリ食うようになるんだろう。メモリヤバスならmadviceがプリフェッチ避けてくれたりするのかな。
  • Effective Modern C++の予約開始 - Faith and Brave - C++で遊ぼう

    EMC++ Exits Publishing Purgatory! - The View From Aristeia Effective Modern C++ - O'Reilly Effective Modern C++ - Amazon.co.jp Scott Meyersの著書『Effective C++』のC++11とC++14対応である『Effective Modern C++ (略称EMC++)』の予約が開始しました。発売は12月4日になっています。 副題は「42 Specific Ways to Improve Your Use of C++11 and C++14」、日語だと「C++11とC++14の使い方を改善する42の方法」といったところでしょうか。

    Effective Modern C++の予約開始 - Faith and Brave - C++で遊ぼう
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2014/11/11
    すっごい爽やかな装丁をされた闇の軍団の本
  • 株式会社ロングゲート - プログラミングの魔導書 ~Programmers’ Grimoire~ vol.1

    プログラミングの魔導書 〜Programmers' Grimoire〜 Vol.1 “Construct the World, C++” ユーザーの力によって際限なく進化するプログラミング言語C++。2010年のいま、C++はどこにいるのか 目次(カッコ内に数字のある記事名についてはサンプルをご覧いただけます) 創刊に向けて Bjarne Stroustrupへのインタビュー (1 2) 江添 亮 boost::serializationの紹介 前編 (1 2 3 4) 近藤 貴俊 Variadic Template −お前を待っていた− Egtra Chronoライブラリで考える型システム melpon オーブンレンジクッキング (1 2) 高橋 晶 Hello,C++ World! 稲葉 一浩/k.inaba Crawling in the Stream zak メタプログラミングノキ

  • 大学に行くべきだったのか

    C++の参考書は、ようやくテンプレートまで進んだ。この項目は、大胆な割愛や、簡略化した説明をしなければならないだろう。テンプレート仮引数とテンプレート実引数を完全に分離して説明するのは、さすがにわかりにくい。 しかし、いまさらになって、大学に行かなかったことが失敗ではないかと思いつつある。 理由はいろいろあるが、私は当時、大学に行かなかった。親の別居やら引越しやら、その理由を当時の外部要因に求めることはたやすいが、結局、大学に行かなかったのは私の責任である。 そして今、私がC++を学ぶために何をしているかというと、規格や論文の読解である。私は一度も、論文の構造とかプログラミング言語の規格書の構造について学んだことはないが、なんとなく感覚で会得していった。 これは正しくない学び方だ。最初に、学問を学問として、系統だてて学んだ方が良かったと思うのだが、いまさら悔やんでも始まらない。もちろん、論

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/04/13
    これだけ貴重な人材に、大学の研究室やどこか企業の研究所から逆オファーがかからないのが解せない…
  • PHP、Perl、Ruby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」:phpspot開発日誌

    PHPPerlRuby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」 2010年03月11日- Run This! PHPPerlRuby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」。 ブラウザ内の<pre>コードで記述した部分を、その場でそのまま動かすことができ、うまくサイトに組み込めばより訪問者にとってわかりやすいページを作ることが出来そうです。 例えば、PHPの入門サイトなんかでは挙動を一瞬で確認できてしまいます。 具体的には以下の言語に対応しています。 Ada, Assembler, AWK, Bash, bc, Brainf**k, C, C#, C++, CLIPS, Clojure, COBOL, Common Lisp, D, Erlang, Forth

  • Boost.勉強会のまとめとか感想とか今後についてとか - Faith and Brave - C++で遊ぼう

    Boost.勉強会 - ATND 12/12(土)にグリー株式会社様のセミナー会場をお借りして Boost.勉強会を開催しました。id:sotarokさんありがとうございました! 【発表のまとめと感想】 ・Boostライブラリ 一周の旅(id:faith_and_brave, @cpp_akira) Boost 1.40.0に含まれるライブラリのうち、74ライブラリを紹介し、 それに加えて「一分でわかるテンプレートメタプログラミング」というのを話しました。 (1分以内には終わらなかったのと、もうちょっとじっくりやりたかったです。) 今回の勉強会ではじめてBoostを知った、という方にはBoostを使い始めるきっかけと なっていただければ幸いです。 反省点としては、1時間セッションの予定が気づいたら40分もオーバーしてしまっていたことですね。 解説するライブラリが74個もあったというのはあり

    Boost.勉強会のまとめとか感想とか今後についてとか - Faith and Brave - C++で遊ぼう
  • C/C++ programming

    激しく今更感がありますが, 自分自身を呼び出すテンプレートのことです. テンプレートメタプログラミング(template metaprogramming)というのが一般的なようです. 再帰呼び出しの終了にはテンプレートの特殊化(template specialization)を利用します. template<int n> struct sum1toN { enum { value = sum1toN<n - 1>::value + n }; }; template<> struct sum1toN<0> { enum { value = 0 }; }; int main() { printf("sum=%d\n", sum1toN<10>::value); return 0; } 実行すると sum=55 と表示されます. この55はコンパイル時

  • Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男

    Googleが、Webブラウザ上でネイティブバイナリコードを実行する「Native Client」を公開した。 Native Client http://code.google.com/p/nativeclient/ Google Earth,Quakeなどがすでに動いているようだ。 これはすごい!ブラウザ上でX86バイナリを動かす「Native Client」 http://www.moongift.jp/2008/12/native_client/ サンドボックスで安全性確保、オーバーヘッド5% ブラウザでx86バイナリ実行、グーグルが新技術 http://www.atmarkit.co.jp/news/200812/09/nacl.html あと、サンプルのlife.ccにSDL_surfaceと書いてあるのでSDLの描画まわりが既に動いているのだろうから、今後、たくさんのアプリがN

    Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2008/12/11
    やべ。。知識足りない。。あとでもう一回読む。
  • volatileで最適化を抑制する - 職業としてのプログラミング

    C言語やC++,Javaにはvolatileという修飾子があります。組み込み系ソフトウェアやマルチスレッドのアプリケーションを書いている方にとっては、なじみ深い存在ですが、そうでない方にはあまり縁がないのかもしれません。しかし、volatileの使い方や存在意義を知らないままコーディングを行うと、思わぬバグを引き起こす場合があります。今回は、そのvolatileキーワードについて簡単に説明したいと思います。 volatileは初期のCであるK&Rには含まれていませんでしたが、ANSI C(C89)以降のC標準規格にはconstと一緒に含まれるようになりました(constとvolatileをあわせてcv修飾子と呼ぶこともあります)。一般的なCなら必ず備えている修飾子です。 volatile修飾子の意味ですが、「プログラミング言語C ANSI規格準拠」によると、 volatileの目的は,黙っ

  • boost::spirit を使ってみる - IT戦記

    はじめに boost::spirit の使い方の勉強。ちょっとずつ追記していく形式で書く 基的なこと hpp ファイルと ipp ファイルの中で実装されているので、何もリンクしなくていい。 とりあえず boost/spirit.hpp を読み込めば使えるみたい。 まず、一番シンプルな空文字列のパース #include <iostream> #include <boost/spirit.hpp> int main(int argc, char** argv) { using namespace boost::spirit; // 空文字列 std::cout << parse("", end_p).full << std::endl; // 1 (成功という意味)と表示 // "a" std::cout << parse("a", end_p).full << std::endl; //

    boost::spirit を使ってみる - IT戦記
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2008/10/03
    ネスト吹いたwww
  • 【C++】標準ライブラリSTLのみを利用したJavaのLoggerっぽいロガークラス。

    ←フエルチラシノウラ。トップページへもどる。 【C++】標準ライブラリSTLのみを利用したJavaLoggerっぽいロガークラス。 C++ STL Logger ロガー ロギングツール Log4Jもどき 自作クラス JavaLoggerっぽいものをC++で自作してみました。 標準ライブラリしか使ってませんのでほとんどの環境でコンパイルできると思います。 基的な使い方は、 ? logger.ini を自分のすきな設定に書き換える。 ? #include "Logger.h" でインクルードする。 ? Logger::configure("./logger.ini"); で設定ファイルを読み込む。 ? Logger::debug("hoge", __FILE__, __func__); で出力する。 以上。 以下はそのメ[スコード等です。 バグがあっても責任取りませんのでー笑 Logge

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2008/10/02
    シンプルでいいなぁ。Lotateをくっつけたい衝動に駆られる
  • 変電工 - Google C++スタイルガイド日本語訳

    国产亚洲欧美日韩在线一区二区三,AV蜜桃,中文乱码人系列一区二区,乱中年女人伦视频国产,男女性高爱潮是免费国产,国产成人精品三上悠亚久久,果冻传媒AⅤ毛片无码

  • C++とのつきあい方

    いきなりでなんですが、このページは、 C++の入門記事ではありません。 C++ってのもいろいろと不自由なところのある言語でして、それをささやかながら改善しようという試みです。 もくじ C++のソースファイルの拡張子って、いろいろですねえ なんで同じことを2回ずつ書かなくちゃいけないの インライン函数の存在意義 仕様文書を抽出する 仕様文書を抽出する(承前) コンパイラーの検査をかいくぐる コンパイラーの検査をかいくぐる(承前) 実行時のクラス判定 「メンバー」か「メンバ」か、それとも「面罵」か 名前が埋もれていく 開発量マイナス7000行 トレースで動作を探る 贅肉を落としてスリムに Cの構造体をC++のクラスにみたてる 続・実行時のクラス判定 STLを使おう HTMLで書くヘルプ 読み手のための翻訳とは エラー対応は難しい 関連情報 C++のコーディング基準の提案。 すべて賛成できるとい

  • Isao's Diary - FC2 BLOG パスワード認証

    ブログ パスワード認証 閲覧するには管理人が設定した パスワードの入力が必要です。 管理人からのメッセージ 閲覧パスワード Copyright © since 1999 FC2 inc. All Rights Reserved.

  • プログラミング/小ネタ集/Unicode対応コーディング - ルーチェ's Homepage

    概要 † このコンテンツは、C/C++言語でWindowsプログラミングをしていて、かつMFCやATLにある CString クラスを使っていない人くらいにしか実益はないかもしれません。 が、内容的に知っておいて損はないことなので書いておきます。 概要としては、 LPTSTR 型や TCHAR 型について知り、NT系(Unicode環境)と9x系(非Unicode環境)のどちらにも最適化できるソースコードを書こうというお話です。 TCHAR 型を見たことがなくても、 LPTSTR 型なら見たことがある人も結構いるでしょう。 初心〜中級のWindowsプログラマは、大抵は LPTSTR 型と LPSTR 型の違いを特に意識せずにコードを書いています。 しかし、この二つの型を混同するのは非常に危険なことです。 まずはこれらの型の定義を説明し、 TCHAR 型を用いることでUnicode対応プロ

  • 契約による設計

    契約による設計 今回は、C++ では実現しにくい面があるけれども、 考え方としては非常に役立つと思われる開発手法を紹介する。 「契約による設計」 (Design by Contract、以下、DBC と略記) とは、 もともと Eiffel*1 というオブジェクト指向プログラミング言語の設計者である Bertrand Meyer氏が提唱し、同言語に実装した概念であるらしい。 同氏が設立した ISE という会社の Web サイトを見ると、なぜか、"Design by Contract" に、 TM が付いていたりする。まあ、それはともかく。 DBC では、ある操作を実行するのに必要な条件や、 操作を実行する前後で変わってはならない条件などを記述し、 プログラムの実行時にその条件をチェックすることができる。 こうすることによって、パラメータや戻値などの値の妥当性の保証について、 呼び出し側と操

  • C++開発者の皆さん。テスト、ちゃんとしていますか? − @IT

    第1回 C++開発者の皆さん。テスト、ちゃんとしていますか?:連載 C++開発者のための単体テスト入門(1/4 ページ) 連載目次 「ビッグバン・テスト」をご存じですか? アプリケーション全体を構築する数千行、数万行に及ぶコードをコンパイルし、いきなり全体を走らせてその動作を確認するテスト手法です。われわれプログラマーが絶対に過ちを犯さないならともかくも、そうではない現実を考えると、このようなビッグバン・テストは極めてつたないテスト法です(そもそも過ちを犯さないなら、テストの必要はないのですけど)。 テストとは、ひと言でいってしまえば「思ったとおりに動くかを検証すること」でしょうね。プログラムは思ったとおりには動きません。作ったとおりに動きます。従って、「思ったとおりに動くか」の検証とは「思ったとおりに作られているか」の検証にほかなりません。 ビッグバン・テストでも「思ったとおりに動くか」

    C++開発者の皆さん。テスト、ちゃんとしていますか? − @IT
  • C++ の設計と進化 - いやなブログ

    C++の設計と進化 しばらく前からのろのろ読んでいた『C++の設計と進化』を読み終えました。C++ の設計者、Bjarne Stroustrup 氏による著作です。 C++は多様なスタイルを許す C++にはCから受け継いだポインタ、構造体、マクロといった機能に加えて、リファレンス、クラス、テンプレート、例外、ネームスペースといった新たな機能が追加されています。 この結果、C++のプログラムは、昔ながらのC、クラスベースのオブジェクト指向プログラミング、テンプレートによるジェネリックプログラミング、など、さまざまなスタイルで書くことができます。これらを混在させることも可能です。 私が以前から疑問に思っていたのは、なぜ C++ はこんなにいろんな書き方ができるのか(コーディングスタイルもまちまちだし)、ということです。書の第一章にまさにその答えがありました。 C++の設計の多くの部分が、強制

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2007/07/16
    逆に書き方を強制されてる言語の方が仕事上は統率がとりやすい気も。プロジェクトメンバー全員に好き放題なコード書かれたら読めませんw
  • C++ 編(言語解説) トップページ ●Programing Place

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2007/07/10
    分かりやすい。