XmacroのイディオムをC++ 11の機能を使って置き換える方法はありますか?できればプリプロセッサを使用しないのですか?私はタプルテンプレートを使うことができると思っていましたが、私はまだそれらの仕事の仕方を突き詰めようとしています。テンプレート/ constexpr/C++ 11のXマクロを置き換える方法はありますか?
答えて
XMacrosは、ワイドさまざまなことを行うための一般的なツールです。その多く(列挙子、文字列などのリストの作成など)は、あらゆる種類のテンプレートの機能をはるかに超えています。
おそらく、テンプレートで置き換える方法があることがあります。しかし確かにそれらのすべてではありません。
私はそれが事実であると予想していました。私が現時点で使用している「いくつかのケース」は、テンプレートで置き換えたいのですが、列挙型の文字列化です。 – Naddiseo
@Naddiseo:その場合、絶対にそうではありません。テンプレートには、トークンをそのトークンの文字列表現に変換する能力がありません。これは、それが必要とするものです。 –
C++ 11では、コンパイル時の文字列処理とリフレクション機能を実際に使用することができます。 'std :: enum_name
- 1. ライブラリクラスを置き換える方法はありますか?
- 2. クラス定義マクロをテンプレートに置き換える
- 3. MySQLのストアドファンクションをアトミックに置き換える方法はありますか?
- 4. Androidで標準のLogを置き換える方法はありますか?
- 5. イメージのピクセルをファイル/ bufferedreaderで置き換える方法はありますか?
- 6. Matlabフィギュアのx軸を置き換える方法は?
- 7. DelphiでStringList.SortをStableソートに置き換える方法はありますか
- 8. XCodeでファイルを簡単に置き換える方法はありますか?
- 9. emacs regexp 11を "11"に置き換えます。
- 10. Windows Mobileのロック画面を置き換える方法またはカスタマイズする方法はありますか?
- 11. ClassPathXmlApplicationContext.getBeanを置き換えるSpringアノテーションはありますか?
- 12. reを置き換える方法 "。" DjangoテンプレートURLタグ
- 13. BOOST_FOREACHを "純粋な" C++ 11の代わりに置き換えますか?
- 14. SVGイメージを置き換える方法またはdivコンテンツを置き換える方法は?
- 15. アンドロイドでカメラのシャッター音を置き換えるか、または消す方法はありますか?
- 16. データを置き換える方法は?
- 17. sedの置換をネストする方法はありますか?
- 18. VBAマクロ、置き換え、数式
- 19. 方程式のxとyをx [0]とx [1]で置き換える方法は?
- 20. javascriptで関数の変数を置き換えることができる方法はありますか?
- 21. AngularJS:テンプレートのテキストを置き換えるフィルタまたはディレクティブ
- 22. テキストファイルを書き、前のファイルを置き換える方法はありますか?
- 23. 角度変換プロバイダ - 一般変数を置き換える方法はありますか?
- 24. Laravel 5.x:ビュー/ブレードのURLのロケールを置き換える方法は?
- 25. アップロードしたファイルを置き換える/上書きする方法はありますか?
- 26. 参照制約をトリガーに置き換える一般的な方法はありますか?
- 27. Apache Velocityテンプレートのクエリ文字列を置き換える方法は?
- 28. Java文字列のメソッドを置き換えるより高速な代替方法はありますか?
- 29. TinyMceはテンプレート内の値を置き換えます
- 30. testng.xml内の複数のテストタグを何か別のものに置き換える方法はありますか
+1このテクニックに名前が付いていることを私に警告するため+1。以前はコードで見てきましたが、私はそれを使用しました。しかし、私はそれが何かに命名されたのか分からなかった。 –