タグ

cppに関するrokujyouhitomaのブックマーク (6)

  • C++ template の(部分)?特殊化ができるとき、できないとき

    C++ template の(部分)特殊化ができるとき、できないとき STL はまあ普通に使う、くらいの軟弱な知識で C++ を使っていると、クラス内で関数テンプレートの特殊化をしようとしてコンパイルエラーになって、なんでここで特殊化できないんだよ〜と愚痴を言っていたら、さらに恐ろしいことに、特殊化はできないのに部分特殊化はできる場合に遭遇したりして、 C++ の闇に触れた気分になるのだけど、実はそうでもないという話(少なくとも、ユーザの側から理解するだけなら、ね)。 (部分)特殊化できる条件 ややこしく感じる理由は、特殊化できる条件と、部分特殊化できる条件が全く別だから。実はそんなに複雑ではない。 特殊化できる OK: 名前空間スコープで定義 NG: クラススコープで定義 部分特殊化できる OK: クラステンプレート NG: 関数(⊃メンバ関数)テンプレート 例 template<cla

  • Build Python binding of C++ library with cffi (PyPy/Py3K compatible)

  • C++のコンパイルエラー爆発を競うコンテスト - Faith and Brave - C++で遊ぼう

    Results of the Grand C++ Error Explosion Competition 少し前に、C++のコンパイルエラーの長さを競うコンテストが開催されていました。 受賞のカテゴリは2つあり、ひとつめは最小コードで最大のコンパイルエラーを出した人、もうひとつは芸術的な評価による受賞です。 最小コードで最大のコンパイルエラー この部門で優勝したのはEd Hanwayさんという方で、ソースコード量に対して59億倍のコンパイルエラーメッセージを出力したそうです。 それには、自身を2回インクルードするという手法が使われていたそうです。 #include ".//.//.//.//jeh.cpp" #include "jeh.cpp" 次点として、インクルードに後方参照を使用した、7億9千万倍のコンパイルエラーを出力するコード: #include "set>.cpp" #incl

    C++のコンパイルエラー爆発を競うコンテスト - Faith and Brave - C++で遊ぼう
  • C++/CLI - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "C++/CLI" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2024年2月) C++/CLIは、.NET Frameworkの共通言語基盤 (CLI) 上で実行するプログラムを作るためにC++を拡張したプログラミング言語である。前身であるC++マネージ拡張に比べて単純でわかりやすい構文になり、可読性も向上している。 C++/CLIはEcma Internationalで標準化されている[1]。C++/CLIに対応したコンパイラとしてVisual C++ 2005以降がある。ほかにもClang上で実装する試みも存在する[2]。 構文の変

  • Cocos2d-x | How to Save a Screenshot

  • 仮想関数

    関数のオーバーライド 一般に基クラスは汎用的な情報しか含みません そのため、基クラスの機能を拡張してく形で派生クラスを建築します このとき、基クラスのメンバ関数を再定義することができます このような関数を仮想関数と呼びます 仮想関数は、基クラスで再定義可能であるということを明示する必要があります 仮想関数は次のようにvirtual宣言します virtual member-function-declarator member-function-declarator は、メンバ関数を宣言します 通常の宣言の頭に virtual を付けただけですね virtual キーワードは基クラスのみで指定します 派生クラスでの再定義の時は virtual は不要です 仮想関数の呼び出しは、通常のメンバ関数と代わりません 仮想関数による再定義は、通常のオブジェクト操作ではなんの影響もありません こ

  • 1