2008-09-01から1ヶ月間の記事一覧
egtraさん曰く。(コメント欄 これに限らずデストラクタが非virtualな多態的に使うつもりはない基底クラスはコンストラクタ・デストラクタをprotectedにするのがよい(そしてunary_functionもそうすべきだった)ということは確かC++ Coding Standardsに書い…
Javaは良い言語であった。*1 登場時のJavaは WORA(Write once, run anywhere)を体現しWeb向け言語としてもプログラマ達に夢を見せた。 今見てしまえば冗長で可読性の低いC系構文に 糞のようなクラス構文とゲロのようなインターフェイス構文であるが それで…
まあそれにvirtualデストラクタがないから危険が危ない。 ... 書いてて思ったのは、おそらくfunctorをポリモルフィックにしようとすると、結局ポインタ経由で使いたくなって、そうすると関数ぽく呼び出すときにデリファレンスしてやらなきゃいけなくなる。で…
何となく思ったこと。なんとか、の話になったとき、 Effective なんとかを読まずになんとかは語れないとか、 やったとは言えないとか、まずは読むべき、とか色々と耳にしたりする。かくいう自分も C++の本で何が良いと言ったら、 プログラムの経験がある人な…
むむ、意外と白熱している? 余計なお世話ですが、ある程度経験を積んだC++プログラマはC++をCとtypoしない気はします。 ブクマされるとき エントリ名から++が消えちゃうことがあるようなんですよねえ。 なんでですかねえ。とりあえず、自分で直してみた。 …
ある程度経験を積んだC++プログラマは絶対にvirtualデストラクタのないクラスを継承しない C++では基底クラスにvirtualデストラクタを書こう - *「ふっかつのじゅもんがちがいます。」withぬこ はよくある間違い。あるいはC++初心者の勘違い。 継承する可能…
は嘘でした。k.inaba さんの指摘で修正。 と、まで書くと言い過ぎか?*1 また、オーバーロードされた演算子の動作を特別に考える必要もない。 演算子オーバーロードした演算子はメンバ関数と同じ動きをする。 virtualでない演算子は、演算子を呼び出した対象…
不可解なJavaコードを題材にして、 何故かを考えたり、 よりよい方法を提示したりするような内容。 提示されるコードの大半がJavaであるため、 C/C++よりもJava寄り、また趣味プログラミングよりも業務プログラミング(集団向け)ではあるが、 if ("".isEqua…
自分は人生というのは有限だなぁ、と思います。 その中で、好きな事、楽しいと思うことの比重をあげていくことが、 より良く生きる事なんだと考えます。 貧すれば鈍する 自分たちも霞を喰って、無限のエネルギで動いているわけではないですし、 趣味にだって…
自重しない大人たちに混ざってBBQに行ってきました。 5家族+独身6人の総勢21名という大所帯でした。何より驚いたのはド○娘が含まれていたことで、さすが自重しない軍団だなぁと感心しきり。うちは嫁と子供をつれて3人で参加しました。 現場には火を手にして…
タイトルはどうでも良い!! 要するに名前が同じで引数が違うメンバ関数は継承先で引き継がれないよ、ということ。どういうことかと言うと、 class A { public: void setTarget(A* a) { a_ = a; } private: A* a_; }; こんなのがあるとする。 ターゲットとし…
いろんな人が作ってるなぁ。 MHI 4.0 - (2008.09.10) うほ、既にあったとわ。 なんという大人気。 ここで、みんなで叫べばきっとッ!!! _ ∩ ( ゚∀゚)彡 RSS! RSS! ⊂彡
自分は、自分に課している規範として「自分の周りの人の幸せを考えて行動する」というのがある。 困ったときはお互い様だと思いたいし、おれはお前が得するように考えるから力を貸してくれよ、というスタンスでいたい。 大型プロジェクトや、グローバル化は…
C++のソースをなおしながら、Pythonの構文チェッカをつくっていたので、 motion_id = default_motion ? default_motion != -1 : MOTION_WAIT みたいな書き方をしてしまった。 いや、Pythonのせいじゃないんだけどね……。 motion_id = default_motion if defau…
ゲームでは多くの場合、スクリプタという作業があり、ゲームの組み込みに関与する。 多くの場合は、専用のスクリプト言語を使ったりして、組み込み作業をする事が多い。 IF FLAG_NAOYA_EAT_SYOYU == OFFFACE NAOYA コーラおいしいですFACE SINAMON それはし…
朝「ときどきの」と打ち込む作業を効率化しようと思い、 Page2RSS - Create an RSS feed for any web pageを利用してみた。 ときどきの雑記帖 2012 - Page2RSS こういうサービスはありがたいなあ。
結局なんにも解決しないんだよなー。 ということで、とりあえずあと少し頑張る。 っていうか終わらせる。
// static な全更新関数 void Hoge::calcAll() { // アニメーション進めるとか、 // ポーリングのための状態遷移とか // メインから1フレームに一回、呼び出される定期的な処理 // すべてのHogeインスタンスに対する処理とか含まれてるstatic関数 } // stat…
呼び出せる。 class A; typedef void (A::*member_function)(); class A { int a; public: virtual ~A(){} virtual void f() { printf("A::f\n"); } virtual void m() { printf("A::m\n"); } virtual void n() { printf("A::n\n"); } void execute(int funct…
剣の達人に会ったなら、あなたの剣を見せなさい。 詩人でない人に会ったなら、あなたの詩を見せてはなりません。 404 Not Found 大いなるソフトウェア論議 -より深く,より主体的に考えるために-作者: Alan M. Davis,富野壽,荒木貞雄出版社/メーカー: 共立出…
デストラクタの振る舞いが意外と反応あったので派生です。C++には仮想関数を実現するために、 vptr、vtblというのがあるというのは先日書きました。書きました。書きました。ポインタが4バイトの環境で、 多くの場合、 class A { int a; public: virtual voi…
職場で 継承先でデストラクタを省略したり、 virtualとつけなかったらどうなるの? って言われたので、 「基底クラスに従うんだぜふじこ!」(ふじこは長いので略) とかいう話をした。質問者が何を心配してたかっていうと、 基底Aを継承したB、 Bを継承した…
Objective-CやQuartzに関してはこちらに書いていこうと思います。 http://iphone-dev.g.hatena.ne.jp/Isoparametric/情報を増やしたい!
上下逆さになるぞ! と思って CGContextScaleCTM(context, 1, -1); な事をして、 yを負の座標系で扱っていたが、 なんかちがうんじゃねー! と思ってきたわけで、どうすべんか。 と考えている。 isFlippedとかもなさそうだしなあ。
Quartzで日本語表示することはできないのか……。 CGContextSelectFont(context, "HiraKakuProN-W3", 32, kCGEncodingFontSpecific); なんてことをしても駄目。 おとなしくUILabel使うかね。ATSUI(Apple Type Services for Unicode Imaging)かCore Textを使…