タグ

ブックマーク / qiita.com/Ushio@github (2)

  • C++のcerealのシリアライズが快適すぎるやばい - Qiita

    cerealって? cerealとは、C++11用のjson, xml, binaryシリアライズライブラリです。似たようなものにboost::serializationや、googleのprotocol buffersなどがあります(ほかにもまだありそうですが)。 ではなぜcerealなのか? cerealには他の二つにはない利点として、 ヘッダーオンリー ライブラリが小規模 というのがあります。 この性質は移植作業を大変楽にしてくれます。 というのも自分、boost::serializationをしばらく使っていたのですが、iOSでも使おうとしてビルドで問題がおきて、もっと良いシリアライズライブラリがないものかと探した経緯があります。 シリアライズしたいケースとして、異なるプラットフォーム同士で通信するプログラムを作りたいケースがありますので、この性質は大いに作業を楽にしてくれます。

    C++のcerealのシリアライズが快適すぎるやばい - Qiita
  • Objective-C++でSwiftに挑む - Qiita

    Objective-C特有の型だってもちろん使えます。 ターゲット2 コレクション型 Swiftでは基となるコンテナクラスは今のところDictionaryとArrayのみという極めて貧弱極まりない環境です。 しかしその点Objective-C++なら、Objective-Cのコレクションクラスはもちろん、 状況に応じてC++のよく熟成された標準ライブラリに簡単に統合することが可能ですね。 例えば以下のように #import <Foundation/Foundation.h> #include <map> int main(int argc, const char * argv[]) { @autoreleasepool { struct CompareNSString { bool operator()(NSString * lhs, NSString *rhs)const { retu

    Objective-C++でSwiftに挑む - Qiita
  • 1