タグ

macroに関するrydotのブックマーク (3)

  • 本の虫: BOOST_PREVENT_MACRO_SUBSTITUTIONについて

    Appleマクロの恐怖 - Faith and Brave - C++で遊ぼう Appleのクソヘッダーがcheckとかrequireとかverifyなどといった、あまりにも一般的すぎる単語をプリプロセッサーマクロで定義している問題。MSも、あの悪名高いminやmaxマクロを定義している。 最良の解決策は、そんなクソマクロを定義したヘッダーを使わないこと。 ところで、#2115 (Avoid bad Apple macros) – Boost C++ Librariesをみると、BOOST_PREVENT_MACRO_SUBSTITUTIONというものがあり、これを使えば、この問題を解決できるらしい。何と、そんな便利なものがあるのか。早く言ってよね。しかし、なぜか、"Perhaps sadly, I have to agree."と言われている。何故そんなに落ち込んでいるのだろうか。気にな

  • Define and expansion of cpp macro

    1. Define and Expansion of CPP Macro Cプリプロセッサマクロの定義と展開 2014/06/28 ドワンゴC++勉強会 #1 でちまる 2. 自己紹介 ● でちまる ● @decimalbloat ● 仕事艦これコンテンツの回収と観賞 – ツイッター上で見かけた不思議C++コードを見て実装を 看破する – Android上でJavaを書く(web系ではない)

    Define and expansion of cpp macro
  • な〜にがStrongTypedefじゃ - デ-mk6

    この記事はC++ Advent Calendar 2012の20日目の記事です. 前の記事 : Boost.Asioによる非同期関数呼び出しと、非同期ノンブロッキングFuture 次の記事 : CEANによる配列操作 導入 ある型に別名を付けるtypedefに対して,ある型を元に新しい型を作る機能をstrong typedefと言います.もちろんC++の仕様としてそのようなものがあるわけではなく,Boost.Serializationにマクロとして実装されているほか,同様のマクロによる実装がいくつかあります. なぜこのようなものが必要かという話ですが,世の中にはグーグル=センセイという実際博識なセンセイがいらっしゃいますので,氏にお尋ねいただくのがよろしいかと思います. ところで,Boost.Serializationにあるstrong typedefには制限があり,適用範囲が組み込み型に

    な〜にがStrongTypedefじゃ - デ-mk6
  • 1