C++
Guest OS 上でビルド中 internal compiler error が発生してビルドできない・・・ Ubuntu公式リポジトリのVirtualBoxとホスト側カーネルの不整合が原因 公式リポジトリのVirtualBoxをOracle提供のものに変更すれば解決. 参考サイト Guest OS 上でビルド中 in…
埋め込みpythonでのみモジュールがModuleLoadErrorを起こす!? pythonモジュール側のシンボルが解決できないのが原因 組み込み先のシンボルを可視化する --export-dynamicを指定してリンクする python組み込み先が共有ライブラリの場合の注意点 リファレン…
アプリケーションの一部をPythonで作る (準備) 通常のパッケージをインストール テスト用最小コード (注意点1) embeddableにはDebug版が付属しない (注意点2) Py_SetProgramNameにはインタプリタのパスを指定する 結構使えそう リファレンス アプリケーショ…
の続き. ManagedクラスとUnmanagedクラスの生存期間差の問題 msclr::auto_gcroot<T>テンプレートクラス スコープ利用に特化した msclr::auto_handle<T> テンプレート 参考情報 ManagedクラスとUnmanagedクラスの生存期間差の問題 Unmanaged C++からManagedクラスを</t></t>…
Pure C++コードから、.NET Frameworkベースのライブラリを使いたい・・・ UnmanagedクラスにManagedクラスのハンドル型を持たせられる? msclr::gcroot<T> を使え! じゃあ、value class の場合はどうするの・・? さあ、gcrootを使ってWrapperを作ろう. Wrappe</t>…
CmakeをupdateしたらOpenMPが見つからないぞ!? テストでfind_packageしてみるけれども見つからない・・・ それ変数やない、キャッシュ変数や・・ 参考記事 CmakeをupdateしたらOpenMPが見つからないぞ!? MacでOpenMPを使ったクロスプラットフォームなC++コー…
多態性キープしてシリアライズしたいけど・・ ポリモーフィックシリアライズ対応 Step.1 ポリモーフィックシリアライズ対応を示すクラスを定義する Step.2 ポリモーフィック型シリアライズ対応の基底クラスを準備する Step.3 ポリモーフィック型シリアライズ…
msgpack::object を直接読み書きする 各種コンテナの型とタイプID object_str の読み書き object_bin の読み書き object_array の読み書き object_map の読み書き 参考記事 msgpack::object を直接読み書きする カスタムアダプタが対象とする型の書き込み実…
シリアライズ/デシリアライズをクラスの外から定義する 定義できるカスタムアダプタの種類は5つ pack アダプタ(シリアライズ) object アダプタ(シリアライズ) object_with_zone アダプタ(シリアライズ) convert アダプタ(デシリアライズ) as アダプ…
データ形態を変換する関数 3つのオブジェクトの形態 シリアライズ操作 C/C++オブジェクト → msgpack format bytes C/C++オブジェクト → msgpack::object 変換 msgpack::object → msgpack format bytes 変換 デシリアライズ操作 msgpack format bytes → msgpa…
継承クラスを含めてシリアライズ/デシリアライズする 継承クラスの場合は基底クラスのメンバ変数もシリアライズ/デシリアライズしなければならないため、すこし手を加える必要があります. クラスの定義 基本的な条件に加えて、 以下の条件を満たすように定義…
仕事でMessagePack - C/C++を使うことがあったのでメモ. MessagePackって何? 基本的な使い方 ヘッダのインクルード 使ってみよう 対象クラスの定義 シリアライズ デシリアライズ 参考記事 MessagePackって何? 様々なプラットフォームで利用できるオープン…
Google C++ Test ライブラリ作るのめんどくさーい どうやって・・? 1.以下の2つインクルードパスを設定する. 2. プロジェクト内でgtest-all.ccをインクルード Google C++ Test ライブラリ作るのめんどくさーい C++のUnitTestっていえば、GoogleC++Testの人…
VS2012のC++ライブラリに含まれるスレッド関係がボロボロ いまさらだけどVS2012で追加されているC++11関連のスレッド関係ライブラリがひどい。 もう使っているケースはあまりないと思いますが、注意喚起と対策をメモ。 1. std::threadのメモリリーク C++11規…
C#のLinqとかJavaのStream APIとか、何かと関数型言語の機能が既存言語に組み入れられるケースが増えてますね。 いつも後れを取ってしまうC++ですが、C#のLinqみたいなことがC++でもできないかな〜と探してみると、ありました。 Linq for C++ ヘッダファイル…