タグ

programmingとc++に関するsourcekのブックマーク (6)

  • 組込環境でC++を使う際の幾つかの優れた方法 - 神様なんて信じない僕らのために

    組込環境というのは、メモリが数MBしかなくて(例えば4MB) プログラムのブートサイズにも限界がある環境の事です。 例外をコンパイラオプションでoffにする 「例外を使った方が安全です!!」 という言葉をはねのけて必ず「コンパイラのオプションで」offにする。 try、catch、throwを使わないということではない。 暗黙にコンパイラが例外のコードを生成しようとするのを停止させること。 例外にコードを使われると書くことができるコードが減ってしまいます。 最悪ブートができなくなります。エラーはassertでトラップしましょう。 特にC++の例外安全性を理解し、使いこなせる人は少ないので無闇にonにすべきではないです。 例外安全性を理解し、設計できる力のある人はほぼいません。 - RTTIをコンパイラオプションでoffにする 「dynamic_castの有用性が!!!」 という言葉をはねの

    組込環境でC++を使う際の幾つかの優れた方法 - 神様なんて信じない僕らのために
  • 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

  • Vista到来。既存C/C++資産の.NET化を始めよう! ― @IT

    最上位エディションのUltimateを初め、Business、Home Premium、Home Basicの各パッケージが置かれている。 さてさて、2007年はVistaの年となりました。(記事日付では)昨日1月30日のWindows Vista発売早々、さっそくインストールした方も少なくないことでしょう。すでに家電量販店には製品パッケージが大々的に陳列されています。最上位エディションであるVista Ultimateともなると5万円超、なかなか強気な価格設定です。 筆者は無線LANでインターネットにつないでいるのですが、まだドライバがVistaに対応してくれていないので格稼働はしばらくお預け。対応アプリケーション&ドライバが増えてくればVistaの普及に拍車がかかるでしょうね。 ■Vista時代にC/C++はもはやお払い箱なのか? 16bit Windowsの時代からWindows

  • 中の人がどう思っているかと,外からどう思われているか - NyaRuRuが地球にいたころ

    「C# とか C++ とか」って書いてあったので反応してみた. 順調に遅延中 正直、C なんかを書いていると、変数に型があって、いちいちそれをかかされることについて、(LL的な意味で)「重いなぁ」とはあんまり思いません。もう「どっちでもいいじゃん」って感じ。Perl と C を比べたとき、静的型とか動的型とか大して「軽さ」に影響してないよね?、と思います。 が、C# とか C++ とかを使っていると、静的型があるのが苦しくて苦しくて仕方がない。もう、「こんなにも・・!!、こんなにも苦しいのならば型などいらぬ!!」(by *「ふっかつのじゅもんがちがいます。」さん)ってくらい苦しくて苦しくて仕方がありません。 これは単純にポリモーフィズムのお話で、静的型付け というよりは、nominal subtyping が脳のリソースを大きく引っ張っていく割に、作りたいことの質ではないから。動的型付O

    中の人がどう思っているかと,外からどう思われているか - NyaRuRuが地球にいたころ
  • C++ コンパイラにおける値渡しの最適化 - kazuhoのメモ置き場

    プリミティブ型でなくとも小さな構造体 (or 共用体) ならレジスタ渡しになる、ってのは C で最適化されたコードを書く際に、しばしば使われるテクニック。でも C++ だと、コピーコンストラクタやデストラクタがある場合はこの最適化が不可能。他にも言語仕様的に細かな条件はあるのかな。ともかくコンパイラの実装でこの可否判断はどうなっているのか、と SUN のドキュメントを読んでいたら、とても頑張っていて驚いた。 In compatibility mode (-compat[=4]), a class is passed indirectly if it has any one of the following: A user-defined constructor A virtual function A virtual base class A base that is passed ind

    C++ コンパイラにおける値渡しの最適化 - kazuhoのメモ置き場
  • ロベールのC++入門講座を読んで C++ を初歩の初歩から再入門するよ - 前編 - ひげぽん OSとか作っちゃうかMona-

    前置き 自分の C++ レベルに絶望したので「ロベールのC++入門講座」を読んで再入門していく過程を日記に書いていきます。 「おまえはそんなことも知らずにコードを書いていたのか!」「それは間違い!」など叱咤激励募集中です:-) 読んでみたら、たくさんの驚きがありました。 スルーせずに読んでもらえると1つくらい役に立つことを提供できるかもしれません。 例えば5章のデフォルト引数に関数を使える例とか。 ルール 前置きはともかくはじめましょう。13:48にスタバで始めました。 読んで行くうえでいくつかルールを決めます。 知らなかったことは正直に知らなかったと書き、自分が読んで分かる説明を書く。 知識が曖昧だった所も同様に明確な説明を書く。 悩んだ内容を書く。 理解が怪しい所は必ずコードを書く。 さあ1章から読んでみよう。 1章 まずは使い方(13:50) 各 OS 毎に C++ の開発ツールを紹

  • 1