タグ

2008年9月26日のブックマーク (9件)

  • ロベールのC++入門講座を読んで C++ を初歩の初歩から再入門するよ - 前編 - ひげぽん OSとか作っちゃうかMona-

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

    amachang
    amachang 2008/09/26
    いろいろ勉強になるー/「const の例を全部書いてみよう。」←僕も書いてみよう
  • C++ と const 参照 - NyaRuRuが地球にいたころ

    数年前,まだ私が C++ゲームを書いていたころ,深すぎる関数のネストは「一旦変数に入れ」て「読みやすくする」というコーディングスタイルにだいたい落ち着いていた.もちろん,「これは一旦別名を付けるだけで,変数に再代入する気はないよ」ということで const も付ける.ただあまり大きなデータのコピーは嫌だよねということで,戻り値が std::string や構造体の関数呼び出しを「一旦変数に入れる」ときは const 参照を好んで使っていた. A(B(C(a), b, D(E(c), d, e))); 「む,なんて読みにくいコード.ばらせよ」 const int target_id = C(a); const MessageBody& message_body = D(E(c), d, e); const Message& msg = B(target_id, b, message_bod

    C++ と const 参照 - NyaRuRuが地球にいたころ
    amachang
    amachang 2008/09/26
    「const 参照があったとき(中略)確かにその参照は,初期化時と同じオブジェクトを指し続けてはいるだろうがその中身まで同じとは限らない」なるほど、バインド先がconst参照しかされていないかを考えなければいけない
  • http://www.kuzbass.ru:8086/docs/isocpp/intro.html

    amachang
    amachang 2008/09/26
    完全式は部分式じゃない式のこと、つまり、式文だったら式文全体、 if だったら "(" から ")" の部分全体。
  • C++ Final Draft International Standard

    Programming languages --- C++ Languages de programmation --- C++ ISO/IEC JTC 1 Secretariat: ANSI Voting begins on: 1998-04-23 Voting terminates on: 1998-06-23 In accordance with the provisions of Council Resolution 21/1986, this document is circulated in the English language only. PRODUCTION NOTE: The dates in the headers of this FDIS, which currently read "1997", will be changed to "1998" bef

    amachang
    amachang 2008/09/26
    C++ の標準仕様。ドラフト版はタダで読める!わーい
  • gdb豆知識 2008-09-26 - 未来のいつか/hyoshiokの日記

    意外と知っているようでよく知らない自分が日々使う道具。そこで、gdbについて復習がてらいろいろ調べることにする。 gdbemacsから使う gdbをコマンドラインから素で使うのはいかがなものかなと思う。やっぱemacsと固く結合されているわけだからemacsから使うのが正しい姿であろう。 「え〜、だってvi使いだし〜」とか「秀丸からは使えないんすかね」とか言うやつがいるが、秀丸ってなんだよ、とりあえづubuntuでも入れて、emacsいれて、gdb使いなさいとか指導したくなる。いかんいかん、説教くさくなってはいかんいかん。 先日もある会議でデバッガの話が話題になったのだが、「TCPなんちゃらのストール問題のデバッグ方法なんですけどね」、みたいな話題で、「それってカーネルの話?」とわたしが聞くと、「いや、ユーザランドっす」と若いハッカー、「じゃ、gdbでほげほげでいけそーね」、「そーっすね

    gdb豆知識 2008-09-26 - 未来のいつか/hyoshiokの日記
    amachang
    amachang 2008/09/26
    おおお。今日の id:hyoshiok は更に熱いぜ
  • C++得意な方へ質問なのですが、何故 非constな参照を一時オブジェクトで初期化できないのでしょうか?…

    C++得意な方へ質問なのですが、何故 非constな参照を一時オブジェクトで初期化できないのでしょうか? class A { public: A() {} ~A() {} }; void test(A& a) { a.method(); } void test_main() { test(A()); // <- この行 } ここで、test(A())の行で、 initial value of reference to non-const must be an lvalue というエラーが出てしまいます。const参照ならば、当然OKですが このようになっている理由が知りたいです。

    amachang
    amachang 2008/09/26
    「引数に一時オブジェクトを指定できしまうと、戻り値を受ける側が、何もないオブジェクトを指し示してしまうということを避けるための措置ではないか」/一時オブジェクトの寿命は重要
  • http://www.sun-inet.or.jp/~yaneurao/intensive/cppmaniax/chap0001.html

    一時オブジェクトの寿命 1.リファレンス一時オブジェクトの寿命 ・リファレンスに対する初期設定子の一部として使われた場合、そのリファレンスと同じだけ生存する。(ARM12.2) 別の言い方をするとconst参照は一時オブジェクトを束縛する。 list-1 cppll3724 #include <iostream> #include <string> using namespace std; string createString() { return "Safe"; } int main() { const string& x = createString(); cout << "x = " << x << "\n"; return 0; }

    amachang
    amachang 2008/09/26
    リファレンスに入った一時オブジェクトの寿命。なるほど、たしかにリファレンスされてる一時オブジェクトの寿命は特別扱いしないとおかしいことになる。
  • 何それ? - IT戦記

    結局、最近目立ついつものメンバーなのが、もう参加者の時点で傷気味 http://b.hatena.ne.jp/TKSK/20080924#bookmark-10135194 こっちは、休日つぶして真剣に資料用意してやってんのにそりゃないわ ひがさんから、以下のようなメールを頂いて 10/16(木)に日Javaユーザグループでクロスコミュニティカンファレンスというイベントを行ないます。クロスコミュニティということなので、Javaにこだわらず、ギークにもこだわらず、楽しくお祭りしようよというイベントです。 詳しくはこちら。 http://d.hatena.ne.jp/higayasuo/20080818/1219038263 Java以外で、みんなに楽しんでもらえるセッションをしたいので、 ぜひ、JavaScriptについてしゃべってもらえたらと思っています。 以前、Shibuya.jsで

    何それ? - IT戦記
    amachang
    amachang 2008/09/26
    ↓「してやってる」じゃなくて「用意して、(発表を)やってる」って意味ですよ/まあ、どっちでもいいですけど
  • サービス終了のお知らせ

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

    amachang
    amachang 2008/09/26
    スーパーコンストラクタ→サブクラス仮想関数呼べない/「スーパークラス側のコンストラクタが呼び出された時点で、まだサブクラス側はコンストラクタが呼び出されてない。まだメンバ変数の準備ができていない状態」