2012-01-01から1年間の記事一覧

intとunsigned int のキャスト検証

サークルで以下のようなC++のコード(一部改変。)が話題になった int hoge=-1; if (hoge<=strlen("hoge")){ std::cout<<"Hoge"<

関数で複数の返り値(戻り値)を返すのをラムダ式でする

C++03までは関数で複数の返り値を表現する際は配列を利用するしかありませんでした。ただその場合は返り値専用の配列を利用するので返り値をわかりやすい名前の別の変数に代入するときやそのまま出力して終わりなどという時は若干無駄なことをしてる感じがあ…

指数関数の性質の考察

指数関数は応用上実数だけではなく、複素数や行列にまで拡張されます。その際多くはテイラー展開を利用することが多いと思うのですが、もっと単純な指数関数である条件だけでうまく指数関数の性質を表すことができないか?一体何が本質的なのだろうか?という…

C++でTDDを始めてみた。

最近よくユニットテストやらTDDやらの単語をよく聞くようになった。いままでだるいな(LLでは標準でサポートされていることも多いがC++の場合そうではないので)と思いつつしていなかったのだが、こないだ思い切って始めてみることにした。環境の導入やそのと…

hspinetでJSONをいじる

HSP3.3からhspinetにjsonを読み書きする機能が追加されました。解説があまりネット上で見つからなかったので調べて書いてみます。パースするJsonは以下のような形式です。 { "Data": { "value": 3, "str": "Hello", "info": [ {"id": 1, "name": "Alice"}, {…

Boost Property Tree LibraryでXMLをいじってみた

今作っているRPGのアイテムのデータをXMLで表現しているのですが、それを読み込む部分で何にしようかなと思いBoostを使ってみました。ということでメモも兼ねて記事を書いておきます。パースするXMLは以下のような形式(ある程度簡略化)です。 <ItemList> <Item name="hoge"> <Script>hogehoge.lua</Script></item></itemlist>…

同じものでも分野が違えば価値も違う

今日オフ会で国立科学博物館に行ってきました。そこでヒザラガイがあってそれについて話したときのこと。 ちなみにヒザラガイっていうのはこういうものです。 地球科学を若干かじっている僕にとっては「海のそれも潮間帯という狭い領域にいて、過去(オルドビ…

Luaの標準ライブラリをCやC++から呼び出すときの注意(メモ)

luaのみを使っている場合標準ライブラリは特にimportやらincludeやらをしなくていいのであんまり意識しない。んでC++から呼び出したときも同じ感じで特に何も指定せずでできるのかなと思ったらエラーを吐いた。 luaL_openlibs(L); という一行を入れなくては…

&演算子のオーバーロードの罠

予想外のエラーがでて悩んでいました。なぜかオーバーロードしたものではなくデフォルトの自分自身のポインタを返すoperator&が呼ばれてしまう... &演算子に限ったことではなくオーバーロードのどの関数が呼ばれるかという問題であることに気づきました。 エ…

Qt SDKを導入してみた

簡単にC++でGUI作れるフレームワークとかないかなと探していたらQt(キュート)なるものを見つけました。ということで導入してみます。 とりあえずQtの公式ホームページにいき、ダウンロードからインストーラを落とします。僕は開発ではwindowsを使っているの…

TeXのマクロでFizzBuzz

TeX

昨日TeXは「チューリング完全性を備えた関数型言語でもある。」というツイートを見かけました。普段レポート書く程度にしか使っていないのですが、これは面白そうだということで調べてみました。どうやらマクロを使ってできるみたいですね。メタプログラミン…

暗黙のインターフェースにconstを強要させる

テンプレートで静的ポリモーフィズムを実現するために暗黙のインタフェースを利用します。しかしこれは明示的なインターフェースと違い、引数がconst、あるいはインターフェースがconstメンバ関数かどうかまで通常指定することができません。しかしconstは便…

vimのスマートインデント(オートインデント)のカスタマイズ

vim

いつもスマートインデント(オートインデント)が不便だな~とか思っていた。というのもタブ幅を4に設定しているのにもかかわずスマートインデントされるときは8になってしまう。結局スマートインデントしてもらってもxを押す(削除)必要があって激しくだるい。…

ブログ移転のお知らせ

はてなブログのほうに移行しました。 http://hogespace.hatenablog.jp/

自作パズルゲームの可解性についての考察(1)

昔(たぶん2年前になるのかな?)に部活の新入生歓迎会にPythonの勉強がてらパズルゲームをつくりました。作ったのはいいんですが、どんな場合でも解けるか否かってのが自明ではなく、気持ち悪いのでときどき思い出して解けることの証明に取り組んでいます。結…

はてなブログに移行しました。

はてなダイアリーからはてなブログへ。アクセス解析がうれしいのでここらに。最近移転ばっかですね。たぶんこれで落ち着くかと。 ちなみに前のブログはこちら→http://d.hatena.ne.jp/ikaro1192/