タグ

C++と裏技に関するiwwのブックマーク (2)

  • 'コピー | Programming Place Plus C++編【言語解説】 第17章'

    C++編で扱っている C++ は 2003年に登場した C++03 という、とても古いバージョンのものです。C++ はその後、C++11 -> C++14 -> C++17 -> C++20 -> C++23 と更新されています。 なかでも C++11 での更新は非常に大きなものであり、これから C++ の学習を始めるのなら、C++11 よりも古いバージョンを対象にするべきではありません。特に事情がないなら、新しい C++ を学んでください。 当サイトでは、C++14 をベースにした新C++編を作成中です。

    'コピー | Programming Place Plus C++編【言語解説】 第17章'
  • C++のenumの値を文字列にできるライブラリnameofがすごい - Qiita

    はじめに 2019/7/10追記 NAMEOF_TYPEの例が0.8.0以降のバージョンで動かない問題を修正しました (Thanks! @tyu_ru_cppさん) C++だと「enumで定義した名前を文字列にしたい」というときに困ることがたまによくあります。他の言語だとToStringメソッドを使って文字列にできたりするのですが、C++だとそうはいきません。 Qtを使うと独自の黒魔術によって比較的楽に取得することができるのですけども、Qtを使わないピュアなC++な環境だとどーすんだろっていう感じです。 そこで、Siv3dの作者さんである@Reputelessさんが、まさにそのenumから文字列の変換ができるライブラリについて呟いておられまして、その機能と実装方法に感銘を受けたので、ここで紹介したいと思います。 C++ で enum の値を追加の記述無しで文字列にできるライブラリだ (MS

    C++のenumの値を文字列にできるライブラリnameofがすごい - Qiita
    iww
    iww 2019/04/05
    『文字列リテラルをsizeofするとその文字列の長さが取れること、関数のシグネチャはある程度固定であることを利用すると、以下のように筋肉で切り出すことが出来ます。』 筋肉という表現をすればよいのか。
  • 1