タグ

programmingとC++に関するshiworkのブックマーク (8)

  • 今日からできる!Googleコード規約! - peroon's diary

    Google C++スタイルガイド日語訳 を参考にしました。 その中から私が理解したもの、 いいなと思ったものだけを紹介します。 関数の引数の書き方 f(hoge, foo, var)左右の括弧と変数の間にスペースをはさまないこと。 定数にはkを先頭につける const int kDaysInAWeek = 7;何のkだろう?(追記:konstant) クラス名はキャメルケース class HumanBody { ... };ラクダのこぶのように。 メソッド、関数は大文字からはじめる void MyFunction(); 変数名は小文字とアンダーバー float my_variable; 列挙子には大文字とアンダーバー enum color { RED_COLOR, GREEN_COLOR, BLUE_COLOR };この命名法で定数と列挙子も区別している? 定数、メソッド、クラス変数の

    今日からできる!Googleコード規約! - peroon's diary
  • ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改

    ディレクトリの中にある大量のファイルを高速に読み込む方法が知りたかったので、実験してみた。想定しているシチュエーションは、一つ一つのファイルは数KB程度だが数が多い、という場合である。適当な順番でアクセスすると、ランダムアクセスになってしまいとても時間がかかる。個々のファイルを読み込む順番はどうでも良く、すべてのファイルを処理することさえできればいいので、原理的にはシーケンシャルアクセスで処理できてしかるべきである。 まず、ファイルシステムについて。HDDやSSDなどのハードウェアにアクセスする際には、ファイル名などという概念はもちろん存在しない。ファイル名と実際のディスク上の対応を管理するのがファイルシステムの主な役割である。ファイルシステムは、ファイル名からそのファイルに対応するブロック番号(メモリアドレスみたいなもんだな)を調べて、そのブロック番号を指定してHDDやSSDにアクセスす

    ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改
  • 株式会社エス・スリー・フォー » COMからのイベントを捕まえる方法

    COMからのイベントを捕まえる方法 "見てくれ"を持たないCOMからのイベントの受理 Visual C++が提供してくれるATL(Active Template Library)を使うと、COM(Component Object Model)を簡単に作ることができます。 COMに発生した状態の変化をイベントとしてCOM利用者(Client)に通知したいことがあるでしょう。 この機能が提供されていないと、COMの状態変化を知りたいClientはCOMに対してメソッドもしくはプロパティを定期的にコール/取得しなければなりません。 Clientに対してイベントを発行する機能を持ったCOMを作るには、dispinterface(ディスパッチ・インタフェース)と呼ばれる接続ポイントを用意します。接続ポイントには、COMが発行できるイベントを定義しておきます。このイベントは、実際にはイベント毎にユニー

  • Winsock Programmer's FAQ

    このページは、Winsock Programmer's FAQ の日語訳です。この FAQ の原文はWarren Young 氏によるもので、Winsock Programmer's FAQのサイトで公開されているものです。このページで公開してい る日語訳は、同氏の許可を得て、私(Keisuke MORI)が翻訳、公開して います。この FAQ のオリジナルの歴史や著者については、序文 の章を参照して下さい。 現時点では、まだ全部の章の翻訳は完了していません。未訳の章は 原文のままで残っていますのでご了承ください(実はこの翻訳は、かな り以前から着手していたのですが、どうも遅々として進まないので:-) まずはできたところから公開することにしました)。 なお、この日語訳FAQは、常に最新であるという保証はできません ので、最新の情報については適宜オリジナルのFAQを参照してくださる よ

  • C++ 12年ぶりに次世代スタンダードへ - "C++0x" 策定進み草案公開へ | エンタープライズ | マイコミジャーナル

    The C++ Programming Language プログラミング言語C++は1998年に発行され2003年に改訂された国際標準ISO/IEC 14882を仕様として採用している。ISO/IEC 14882はC++の言語仕様と標準ライブラリの双方を規程しており、1998年に規程されたものは通称C++98、2003年に改訂されたものは通称C++03と呼ばれている。現在、JTC1/SC22/WG21 - The C++ Standards Committeeにおいて次期C++仕様"C++0x"の策定が進められている。最終的に12年ぶりに新しいC++が登場ということになりそうだ。 C++0xはC++98/03との互換性は確保しつつ、言語仕様と標準ライブラリの双方の規約を改訂するもので、新しい機能として並列プログラミングのサポートやプログラミングの簡素化、関数プログラミング機能の強化、ジェネ

  • 青島のしま〜Blue Islands〜 : シリアル通信(RS-232C)で送信・受信を行うプログラム

    SerialCommunication.h #pragma once #include "IReceiveEvent.h" class CSerialCommunication { private: HANDLE m_hComm; // COMポートのハンドル CWinThread *m_receiveThread; // RS232C受信スレッド public: bool m_isReceiving; // RS232C受信を続けるかを示すフラグ IReceiveEvent *m_receiveEvent; // 受信イベント発生時に呼び出すクラス public: /** コンストラクタ * @param receiveEvent データ受信時に呼び出すメソッドを実装したインスタンスのポインタ */ CSerialCommunication(IReceiveEvent *receive

  • プログラムを書こう!

    みなさま こんにちは。ここには、C++Javaなど、プログラミングの入門記事を書いていこうと思っています。 一応、製品版がありますが、ここはもちろん無料です。更新はとてもゆっくりになると思いますが、よろしければ、気長につきあってください。一緒に楽しくプログラミングしていきましょう。 入門記事の読み方 細部にこだわるより、全体の流れを見てください。最初に解説をざっと読んだら、サンプルをコンパイル・実行し、うまくいったら、少しだけ書き換えてまた実行してみてください。書き換えがうまくいったら、わかっていることになるのです。それから、少しゆっくり解説を読んでみてください。 そういう勉強方法を嫌う人がいることも知っています。しかし、「すべてをひとつひとつ理解してから進もう」として身動きが取れなくなってしまう人もたくさんいるのです。20歳頃の私がそうでした。それが、「わかってきたな」、「おもしろい

  • C++アプリケーションの効率的なテスト手法(CppUnit編) ― @IT

    第2回 C++アプリケーションの効率的なテスト手法(CppUnit編):連載 C++開発者のための単体テスト入門(1/4 ページ) 連載目次 前回は単体テストの重要性を示し、従来のC/C++でのテスト手法であるprintf関数やassertマクロを使ったテストを紹介しました。この2つのテスト手法は開発環境(コンパイラとライブラリ)さえあれば利用でき、その使い方も簡単です。しかしながら、いずれも系統立てて、効率よくテストを行うには力不足の感が否めません。 今回は、Visual C++ 2005 Express Editionを含むVisual Studio 2005(以後、VS 2005)で利用できる代表的な単体テスト・フレームワーク(Unit Test Framework)の1つである「CppUnit」を紹介します。 ■単体テスト・フレームワークとは? 前回、「バグは早期発見が望ましい。早

    C++アプリケーションの効率的なテスト手法(CppUnit編) ― @IT
  • 1