タグ

c++に関するwataken44のブックマーク (9)

  • MSDN ホームページ

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

    MSDN ホームページ
  • ひげぽん OSとか作っちゃうかMona- - Emacs + GLOBALでソース読みを快適に

    ネットワークサーバー実装のためにuIPのソースを読もう。 NICドライバの移植のためにFreeBSDのソースを読もう。 ということで以前使っていた etags を使おうと思ったがキーバインド忘れた。 そして etags はなんだかいろいろ不満点があった気がするので GLOBALを使ってみることに。 以前GLOBALは出力をHTMLにして使ったことがあるのだが、最近EmacsにどっぷりなのでEmacsから使ってみることに。 0.GLOBALって何? GNU GLOBAL は、ソースコードに索引付けを行うことで、大規模システムのハックやレビューを効率化するソフトウエアです。 ソースファイル中の指定したシンボルを高速に見つけ出し、素早くその場所に移動することができます。多くのサブディレクトリからなり、#ifdef や main() 関数を沢山含んでいるような、いわゆる巨大なプロジェクトをハックす

    ひげぽん OSとか作っちゃうかMona- - Emacs + GLOBALでソース読みを快適に
  • C++ Style Guide

    Benjy Weinberger Craig Silverstein Gregory Eitzmann Mark Mentovai Tashana Landray This style guide contains many details that are initially hidden from view. They are marked by the triangle icon, which you see here on your left. Click it now. You should see "Hooray" appear below. Hooray! Now you know you can expand points to get more details. Alternatively, there's an "expand all" at the top o

  • 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
  • 翔ソフトウェア (Sho's) - XP (エクストリーム プログラミング) - C++ コーディング標準

    C++ コーディング標準 このドキュメントはオリジナルの Java コーディング標準を C++ 用に変更したものです. オリジナル:http://www.objectclub.jp/community/codingstandard/CodingStd.pdf フィードバックを歓迎します. フィードバック先: fujiwo@shos.info 初版: 2002年07月10日 改訂1版: 2002年08月06日 改訂2版: 2008年03月13日 (フィードバックを頂き C++ の文法にそぐわない点などを修正) 方針 このコーディング標準は,ソフトウェア開発プロジェクトにおいて C++ でコーディングする際のルール,推奨,および迷った時の指針を提供するものである. 標準策定の方針は,読みやすくメンテナンスしやすいコードを書くことである.実際のコーディングにあたっては,プロジェクトメンバー全員が

  • C++ Labyrinth

    テンプレートあれこれ (3) -- 明示的なインスタンス生成 クラステンプレートでは、メンバ関数は inline として (あるいは直接クラス内で) 定義するのが一般的である。 template<class T> class Foo { public: void hoge( const T* s ) { // s を使った処理 } }; だが、これでは実装の詳細をすべてクライアントに曝してしまっているわけで、 商用ライブラリなどでは不都合なこともある。実装を隠したいのであれば、 普通のクラスを定義するときと同様、宣言だけをヘッダーファイルに置き、 メンバ関数の実装を .cpp ファイルとして分離することができる。 [foo.h] template<class T> class Foo { public: void hoge( const T* s ); }; [foo.cpp] #incl

  • C++ Labyrinth

    C++ ラビリンス C++ は、数多くの謎、咒文、罠、そして宝箱が仕掛けられた、壮大な迷宮である。 その C++ 迷宮をさまよう同志たちへ、ささやかながら、いくつかの道標を お贈りしたい。 もちろん、私自身、C++ 迷宮の一彷徨者に過ぎない。誤りや不備な点があれば、 遠慮なく指摘していただきたい。 キャスト (2001-03-01) dereference (2001-03-01) マルチスレッドにおける singleton (2001-03-17) 契約による設計 (2001-03-25) 戻値とコンストラクタの妖しい関係 (2001-04-09) マルチスレッドにおける singleton (その2) (2001-04-10) 自己言及的なテンプレート (2001-06-13) オーバーロードは継承できない (2001-06-16) GCC 3.0 のインストール (2001-07-0

  • 日本IBM

    IBMのセキュリティー研究開発機関「X-Force」が、サイバー脅威のトレンドとセキュリティー戦略強化の推奨事項を公開

    日本IBM
  • C と C++

    9.1. C と C++C と C++ プログラムに存在する最大のセキュリティ上の問題の 1 つは、バッファ オーバーフローです。詳しくは Chapter 5 を見てください。 C はさらに例外をサポートしていないという弱点を持っていて、重大なエラーを 無視して、安直にプログラムをコーディングできます。C や C++ には他にも問題があります。それは、開発者が自分でメモリ管理をしな ければならない点です(たとえば、malloc()や alloc()、free()、new、free)。 メモリ管理に失敗すると、結果としてセキュリティ上の弱点になるかもしれません。 もっと深刻な問題は、プログラムが開放してはいけないメモリを間違って開放できる 点です(つまり、C++ で malloc() と new 命令を混ぜて使うと、不正な命令を利用 していることになります)。 こうなると、場合によっては G

  • 1