最近、数年ぶりにC++を触っているのですが、いつの間にかかなり使いやすくなっていました。まだ全容は把握できてないのですが、とりあえず印象に残った以下の項目について書いてみたいと思います。 BOOST_FOREACHとautoですっきりループ tupleで無くなる無駄な構造体 #pragma onceで楽々インクルードガード std::functionとlamda関数でコンパクトなコード typeidでリフレクション 主にC++0x周りの話だと思っていますが、勘違いしている可能性も高いです。 前置きですが、本エントリ内のコードはすべてgccの4.5.0で動作確認を行っています。(mac portのgcc45パッケージをインストールしました)。またビルド時にはc++0xの使用を明示する必要があります。 $ g++-mp-4.5 -std=c++0x main.cpp 1. BOOST_FORE
JSONなデータをスクリプト言語から触るのは相当簡単ですが、C++とかでだとそれなりに大変です。なのでライブラリ使うのが良いかという話になります。最初はboostのPropertyTreeを使っていたのですが、DOMにしては中途半端だし、treewalkもできないし、コンパイル重いし、ソース読めないしでイライラは頂点に達していたのですが、picojsonが良いらしいと小耳に挟みまして試してみたら、大変使いやすかったのでメモ書きです。 実際に以下のJSONデータをpicojsonから触ってみます。 { "key1": [ "val1", "val2", "val3" ], "to_delete": "delete val" } 大まかな使い方は以下のような感じでしょうか。ツリーの内部ノードは、object型(map<string , picojson::value>)とarray型(vect
ここ2、3週間久々にiphoneを弄っているのですが、GCが入ってない環境でのプログラミングはやらないと衰えるんですね。LLに慣れると辛いです。細かい事にまで気を使う必要があるので疲れますね。ブログ書きながらリハビリしようと思います。 さてiPhoneではバックエンドにSQLiteを使えるんですが、そのラッパーのFMDatabaseの使い方をまとめておきます。 インストールとプロジェクト設定はこちらのページを参考にさせて頂きました。ソースをコピーして、プロジェクトにライブラリを追加しましょう。 今回このインターフェースを使って行う処理は、概ね以下のSQLの通りです。テーブル作成後、CRUD操作を一通り行っています。 -- CREATE TABLES CREATE TABLE authors( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT )
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く