プログラミング

C++14関数の戻り値の型推論

戻り値の型推論について C++14から戻り値の型推論が使えるようになり、例えば、以下の関数も正常に動作します。 auto getThree() { return 3; } // 戻り値の型はint Boost Range Ovenを使ったサンプル 上記だけだと何が便利かピンと来ないですが、複雑な型を…

C++のLINQライクライブラリとC#のLINQ覚書き

概要 LINQを使うに当たって、評価コストやメモリ使用量が気になったので自分用メモ C#のLINQを基準にして考え、cpplinq、Boost.RangeのOven拡張の使い方、特性について書いていきます。 C#のLINQ クエリはIEnumerableな配列として作成されます、 作成時には…

OpenFLで使えるGUIライブラリ

このページには保存版として使えるように、黙々とOpenFL*1で使えるGUIを張っていこうかと思ってます StablexUI 2013/11/08記載 GitHub ドキュメントも充実 http://lib.haxe.org/に公開されてる中では一番規模大きい? 軽く触ってみた感じ一番高機能。 UIをXML…

C++でLINQ

cpplinqというC++11でLinqライクな事が出来るライブラリを使ってみた、という内容です。 なので若干釣り記事です。コンパイラはGCC 4.8.1(MinGW)を使用しています。 cpplinq概要 cpplinqでは、操作用のクラスへRange受け取った後、>>演算子によってクエリ式…

Haxe覚書き

実に1年と9カ月ぶりのエントリ、私は元気です。 ここでは自分用メモの為にもHaxeを触ってみて、この言語独特だと思うところを書いていきます。Haxeについての解説は省略 Haxeの型 基本型 - Haxe・Haxeでは、整数値IntはFloatを継承して定義されてます。 ※Win…

C++でクロージャ

JavaScriptでクロージャを触ってみて、C++でも検証してみました。 結論から先に言うと、参照カウントのスマートポインタ(std::shared_ptrやboost::shared_ptr)を使えば出来ました。 ※1/10一部修正、詳しくはコメント欄 クロージャ概要 JavaScriptのサンプル…

Singletonパターンを色々検証してみた

Singletonクラスに依存関係のあるメンバを置く際にどうやればいいのか色々検証してみました C++でSingletonパターンを書く時の基本のコード class Singleton { private: static Singleton *me; Singleton() { std::cout << "Singleton()" << std::endl; } ~S…

MinGWでBoost 1.48.0を使う

ビルドが必要なboost::threadやboost::regexを使いたい時にはまったので私的メモ、 試したOSはWindows7。 環境 gcc 4.6.1(MinGW)(※リンクはTopページ) Boost 1.48.0当然ながらMinGWのbinにはパスを通しておく。 手順 解凍したboostのパスにて、以下のコマン…

atwikiでjQuery pluginのtablesorterを使ってテーブルをソート対応してみた

@wiki(以下atwiki)はこちら デモはこちら 対応させる為に必要なファイル 必要なファイルをダウンロードする jQuery(記事書いた時はv1.6.4) tablesorter(記事書いた時はv2.0.5 これらを作成したwikiから見えるパスへ準備しておく (今回は同じwiki内へ用意) 概…

演算から見るC++0x rvalue referenceのパフォーマンスチェック(後編)

前編からの続き コード 今回は4x4の行列クラスを乗算した時のそれぞれのパフォーマンスを検証します。 行列クラスのヘッダファイル Matrix.h #ifndef MATRIX_H__ #define MATRIX_H__ // C++0xで導入された rvalue reference を用いる場合はON #define RVALUE…

演算から見るC++0x rvalue referenceのパフォーマンスチェック(前編)

※私個人の検証の結果なので間違っている可能性があります、その時はコメントなりでご連絡ください。 後編はこちら 概要 C++03の時代までは、複数の演算を演算子を用いて書いた時は可読性が良いのですが、一次オブジェクトが何個も作られパフォーマンスが落ち…

C++版のSleep sort

元ネタはここ→http://dis.4chan.org/read/prog/1295544154、 ちなみにここで知った→常識を覆すソートアルゴリズム!その名も"sleep sort"! - Islands in the byte stream 考えた人天才だろ。 ※5/21密かに修正(scoped_lock使おうね!) #include <iostream> #include <boost/thread/thread.hpp> #i</boost/thread/thread.hpp></iostream>…

一人Haskell勉強会 1

進捗 P76*1 ・String == [Char] concat関数にて文字列連結を試したけど -- concat :: [[a]] -> [a] main = putStr $ concat ["Hello", " ", "World"]の出力結果が Hello Worldになったので、この場合だと concat ["Hello", " ", "World"] → concat [['H', 'e…

一人Haskell勉強会 0

え?、それって普通の勉ky(ウワナニヲスルヤメロ 教材 http://www.amazon.co.jp/%E3%81%B5%E3%81%A4%E3%81%86%E3%81%AEHaskell%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-%E3%81%B5%E3%81%A4%E3%81%86%E3%81%AE%E3%83%97%E3%83%AD%E3%82%B0%E3%8…

ハノイの塔(非再帰Ver)

元ネタは以下二つ 2005-10-08 ハノイの塔を攻略せよ!【Windowsプログラミング研究所】 上リンクの仮想スタックを使った末尾再帰と非末尾再帰について 末尾再帰 void f(){ if (e) return ; g(); f(); } ↓ void f(){ push(); while(pop()){ if (e) continue; …

AutoHotkey設定(自分用メモ)

; Ctrlに指持ってくのめんどい vk1Dsc07B & x:: Send, ^x vk1Dsc07B & c:: Send, ^c vk1Dsc07B & v:: Send, ^v vk1Dsc07B & s:: Send, ^s ; vi風カーソル移動 vk1Dsc07B & h:: Send, {Blind}{Left} vk1Dsc07B & j:: Send, {Blind}{Down} vk1Dsc07B & k:: Sen…

swap処理まとめ

Javaを勉強中の為一端まとめの為にJava、C言語、C++それぞれの swap関数を作ってのswap処理についてまとめてみる ※あくまで例なのでアクセサとかアクセス制限とかについては考えません Java プリミティブ型は値渡ししか出来ない為クラスを作って参照型として…

iPhoneからDropboxへ写真以外のファイルをアップロードする

※3/19追記 GoodReaderのバージョンアップでDropboxへのアップロード機能が付いた模様、詳細は文末 目的 iPhoneと過ごした600日まとめ(1軍のアプリと周辺機器) | GOODEGG JP この方の使い方が素晴らしく、真似させて頂こうと思ってます、 各アプリのメール転…

やっぱ常識には合わせなくっちゃねえ

昔の“常識”,今の“非常識” | 日経 xTECH(クロステック)とあるブログから辿って見つけた記事です。 さて、私は今までクラスメンバにはm_を付けていました、そうするほうが分かり易いだろうと思って今まで継続していました。 だが、私もm_を付けないようにし…

ちょんぼ

ポリモーフィズムを利用した設計でデストラクタが呼ばれないので30分程悩んでいたら、 基底クラスにvirtualを付け忘れてました。 ちょっと恥ずかしい。

Google Maps API

http://tech.nitoyon.com/javascript/application/racing/1.htmlこりゃすごい、まだ試作段階のようですが応用例のゲームが出てきたら楽しくなりそうだ(作る方も、プレイする方も)。

研修

4月から働くにあたって、研修のために「H8マイコン」という組み込み系の練習マイコンとC言語の研修を行っている、新プロジェクトの案があり、それに参加できるレベルになる為に組み込み系に慣れておこうっていう研修のわけだ。 しかし久しぶりに純粋なCを触…

Lib化

モーションツール、及びゲーム作成に使用する自作のDirectXラッパーライブラリが肥大化してくるとともに仕様が安定してきたのでlibにまとめた。いやービルドが早くなりましたよ。 今までは一からのビルドを実行すると大体40秒程かかっておりましたが、 15秒…

デザインパターン

ちょっとプログラムの設計について知りたいことがあったので検索したら、分かりやすい解説があるではありませんか。サルでもわかる 逆引きデザインパターン 第1章 はじめてのデザインパターン はじめに知らないうちに似たような設計をしたりすることは良くあ…

やねう企画2005度入社試験

テストの為学校は早めに終わる。 http://d.hatena.ne.jp/yaneurao/20050929:解答を頂き、その辺の基礎が自分は全然なのを思い知り、とりあえずざっとアルゴリズムの勉強を終了。 問2に関しては、現実味が無いコードと言われました。その辺は自分でも常々思っ…

これからのゲーム作り

http://pcweb.mycom.co.jp/articles/2005/09/10/cedec1/001.htmlシングルスレッドでゲームを作ってる方は一読の価値あり。 ていうか私もシングルスレッドですよ、 スレッドの勉強しなければ。

シミュレーション

シミュレーションのステージ作成の定石はやっぱりスクリプト言語、ではどれを使おうか。http://www.kjps.net/user/nis/langnis.html なんかたくさんありすぎ。 ざっと読んで、知っていた物に絞ってみる。 一。 自作、欲しい機能をすぐに拡張できるし、なによ…

次世代CPU

Intelが、2006年後半に次世代CPUを投入するとのこと後藤弘茂のWeekly海外ニュース てことは、それらがお手ごろ価格になって、遅くても3年以内には店頭に並ぶデスクトップPCにデフォルトで搭載されるのだろうか、そうなれば、市場のIntel製CPUは全てデュアル…

作っておかなければならないもの

3Dのマップ作成時、大体はモデリングソフトを使って作れば十分なのだが、例えばテクスチャが16x16とか、32x32、64x64のチップ集を使って2Dのマップチップのようにしたいなら、やっぱりモデリングソフトだけでは大変な作業になると思う(MAYAとか、3dsMAXなど…

ムービーテクスチャ

タイトルや、爆発などのエフェクトで、ポリゴンにテクスチャを張ってUVアニメーションでやっていたが、チームリーダが「ムービーテクスチャできれいに作りたい。」と言ったので、ムービーテクスチャ関連のサンプルが無いか探し中... うーむ、日本語で検索す…