not an lvalue このエントリーを含むはてなブックマーク このエントリーをブックマークした人数

会社で相談を受けたのでメモ。以下のようなコードをCodeWarriorでコンパイルすると”not an lvalue”と警告される。

struct A
{
  int v[100];
};

A foo()
{
  A a = {1, 2};
  return a;
}

int bar(A *a)
{
  return a->v[0] + a->v[1];
}

int main()
{
  return bar(&foo());
}

一時的なオブジェクトのアドレスを取ろうとするのがまずいのかな。ちなみにg++だと”taking address of temporary”という警告になる。こちらの方がわかりやすいかな。

以下のように修正するとコピーが発生するので、渡すものが大きいほど時間がかかる。

struct A
{
  int v[100];
};

A foo()
{
  A a = {1, 2};
  return a;
}

int bar(A a)
{
  return a.v[0] + a.v[1];
}

int main()
{
  return bar(foo());
}

そこで、参照で渡すと良いようだ。実際ポインタを使ったときと出力コードが同じなのに、こちらは警告が出ない。まあNULLを渡すことが無い限り参照で置き換え可能だよね。

struct A
{
  int v[100];
};

A foo()
{
  A a = {1, 2};
  return a;
}

int bar(const A &a)
{
  return a.v[0] + a.v[1];
}

int main()
{
  return bar(foo());
}

出力コードの差分はこんな感じ。関数のラベル名が違うだけ。

--- a0.s        2009-05-07 20:48:01.296495800 +0900
+++ a2.s        2009-05-07 20:48:49.155870800 +0900
@@ -1,4 +1,4 @@
-       .file   "a0.cpp"
+       .file   "a2.cpp"
        .data
        .align 4
 LC0:
@@ -29,9 +29,9 @@
        ret     $4
        .align 2
        .p2align 4,,15
-.globl __Z3barP1A
-       .def    __Z3barP1A;     .scl    2;      .type   32;     .endef
-__Z3barP1A:
+.globl __Z3barRK1A
+       .def    __Z3barRK1A;    .scl    2;      .type   32;     .endef
+__Z3barRK1A:
        pushl   %ebp
        movl    %esp, %ebp
        movl    8(%ebp), %edx
@@ -59,7 +59,7 @@
        call    __Z3foov
        subl    $4, %esp
        movl    %ebx, (%esp)
-       call    __Z3barP1A
+       call    __Z3barRK1A
        movl    -4(%ebp), %ebx
        leave
        ret

Posted by iwadon ( 2009-05-07 13:03:00 GMT ) | カテゴリ | タグ , | トラックバックなし | コメントなし

忌野清志郎 このエントリーを含むはてなブックマーク このエントリーをブックマークした人数

忌野清志郎というと中学の頃友人から教えてもらったサマーツアーという曲と、最近YouTubeなどで観た夜のヒットスタジオでの演奏のインパクトが印象に残っている。それにしても病気とはいえ58歳はまだ若いよなあ。

訃報:忌野清志郎さん58歳=ロック歌手 がん治療続け - 毎日jp(毎日新聞)

Posted by iwadon ( 2009-05-02 20:05:00 GMT ) | カテゴリ | タグ | トラックバックなし | コメントなし

けいおん!のOPとED このエントリーを含むはてなブックマーク このエントリーをブックマークした人数

けいおん!のOPとEDがiTunes Storeで買えることを知って検索してみたら本当にあった。で、つい買ってしまった。アニメの曲を買うなんて何年振りだろう。 桜高軽音部 [平沢唯・秋山澪・田井中律・琴吹紬(CV:豊崎愛生、日笠陽子、佐藤聡美、寿美菜子)] - Cagayake!GIRLS - EP - Cagayake!GIRLS 桜高軽音部 [平沢唯・秋山澪・田井中律・琴吹紬(CV:豊崎愛生、日笠陽子、佐藤聡美、寿美菜子)] - Don't Say "lazy" - EP - Don't Say "lazy" ……なんか寂しいので、こちらも。 asin:B001TK8WX2:detail asin:B001TK8WXM:detail

Posted by iwadon ( 2009-04-28 11:06:00 GMT ) | カテゴリ | タグ , , | トラックバックなし | コメントなし

2009-04-26 このエントリーを含むはてなブックマーク このエントリーをブックマークした人数

最近観ているアニメが増えてきたのでまとめてみた。他にも本とかCDもいくつか買ったのでそのことも書き残したいのだが、大概次の日になると忘れてしまう。ほんと昔から僕にはこういうことのマメさって無いんだよね。

いくつかのものを除くとだいたいのものはAmazon.co.jpと三省堂から買っていて、それらには購入履歴が残っているので、その履歴情報をなんとか再利用出来ないものかなあと夢想している。具体的には買った本の情報をはてなブックマークや読書メーターなどに自動登録するとか。何かと面倒に感じて考えるだけで手を動かしていない。そのうちなんとかしたい。

近頃は日記を書くことすら滞っているので、その辺もなんとかしたいところ。まあなんでも良いから毎日書き続けてみる? うーん、気が向いたらね。

Posted by iwadon ( 2009-04-26 14:59:00 GMT ) | カテゴリ | タグ | トラックバックなし | コメントなし

近頃観てるアニメ このエントリーを含むはてなブックマーク このエントリーをブックマークした人数

最近は週末に録り溜めたアニメを結構消化出来ているのでわりと嬉しい。来月以降少しずつ忙しくなるだろうから、今のうちに楽しんでおくのさ。ということで以下、新作と再放送を含めた、現在観ているアニメ。

視聴継続中

Zガンダム

放映当時リアルタイムで観ていたはずなんだけどかなり忘れてるので結構新鮮な気持ちで観てる。

ガンダムの時もそうだったけど、先日観た映画版よりいちいち話が長いので、一気に観るとダレそうだけど、週一で観るなら気にならないようだ。さくっと観るなら映画版でも良いかなあと思えてきた。結末の変更は先日観た時にもモヤモヤするものがあったが、ZZ映画版に続くってわけでもないならこれでも良いか、と思うことにした。

マクロスF

観るまでは、色んな人達がやったり書いたり描いたりした例の「キラッ」しか知らなかった訳だが、第1話を見終わった後に次も観たいと思ったので継続して観ている。CGとセルの違いもほどなく慣れてきた。

関係ない話だけど、昔マクロスを生で観てた頃、次回予告を見終わるとえらく気だるい気持ちになったことを思い出したよ。正確には、次回のサブタイトルを言うところあたりにぐっと来てた。確か地元では日曜日に放映されてて、見終わった後に明日の月曜日のことを思い出して憂鬱な気分になったんだろうな。

涼宮ハルヒの憂鬱

近年またアニメを見るようになったきっかけであった作品だけに、色々と楽しみにしていたんだけど、内容がDVDと同じ?なのはともかく、縦横両方に黒帯があるのはどういうことか。せっかく大きな画面があるのになんかもったいない。今後に期待。

けいおん!

原作漫画は1巻を表紙買いして微妙な印象しか持っていなかったので、アニメを見てなんか普通のバンドものっぽくて、観れる内容になっててビックリした。しかし、原作1巻を確認したらそれほど違っていなかったので余計ビックリした。ちなみに一番ヒットしたのは第1話最後の方の演奏。

それはそうと先週名駅近くの本屋で原作漫画(1巻2巻とも)を見つけることが出来なかった。アニメの影響か? なんて簡単な話ではないようにも思うが、なんかこう買えないと余計に欲しくなるものなのだ(嫌な性格)。

アスラクライン

これも第1話を観て次も観たいと思ったので継続。ふと我に返ると絵柄がやや古いような気もするけど、観ている最中は気にならないんだよな。話の内容はあまり理解出来ていない。

そういえば、アニメを見た後になってこれの漫画版が電撃大王に掲載されているのにようやく気付いた。こちらはなんだか読みにくくてスキップしていた作品だったので、今後は読むようにしよう。

真マジンガー 衝撃!Z編 on television

第1話を観て、色々と衝撃的だったので継続中(笑)。ただあまり印象に残りにくいような気もしてる。いや、なんか毎回すごいんだけど、なんでだろ。

戦場のヴァルキュリア

セガのゲームのアニメ化。意外と観やすかったので継続。ゲームのCMを観てるとアニメの印象もあって思わず買いそうになったがまだ買ってない。セブンスドラゴンのCMもあった。

鋼の錬金術師 FULLMETAL ALCHEMIST

前回のアニメ化を観て漫画版を買うようになったので、今回のアニメ化も気になってた。悪くない。なんか妙に静かな(無音っぽい)場面に気が付くときがあるけど、全体的には見やすいので気にしないことにした。

咲-Saki-

当初あまり興味が無かったので録画していなかったが、巷の感想を観て興味を持ったので、先週放映してた第3話だけ観た。意外と麻雀シーンが多かった。1〜2話を観なかったせいか話の筋はよくわからないが、なんか気になるので継続。

リストランテ・パラディーゾ

多分女性向けアニメなんだろうけど、普通に面白そうだったので継続。次回予告でちょっとひるんだが気にしないことにした。

初恋限定。

これも原作を一切読んだことがなくて、周辺の情報しか知らなかったが、普通に面白かった。

その他

Pandra Hearts

第1話を観て、次も観ようかどうか考え中。伏線は気になるものの、他に引っかかりが無かった。

蒼天航路

これもどうしようかな。色々とカッコいいシーンもあったし、えぐい表現もそんなに悪くない。ただ引っかかるところがないのでちょとと迷ってる。

まとめ

いくらなんでも追いすぎな気がしているが、それだけ面白い作品があるということなので幸せなことなのだろうなあ。無理しない程度に追いかけていこう。

それにしても、昔は1話でも録り逃すと継続して録画する気になれなくて、あとから後悔するということを繰り返してきただけに、HDDにがしがし録画してあとからゆっくり観られるし、親切機能で次回分の録り逃しも防げるなんて、いい時代になったなあと思う。と、なんかジジ臭い〆で終わり。

Posted by iwadon ( 2009-04-26 13:37:00 GMT ) | カテゴリ | タグ | トラックバックなし | コメントなし