タグ

2012年2月22日のブックマーク (2件)

  • メンバ関数の部分特殊化がしたい - akihiko’s tech note

    C++ でメンバ関数を部分特殊化しようとすると(例えばテンプレートクラスのテンプレートメンバ関数を,ある特定の型について特殊化する),コンパイルエラーとなる.gcc なら "error: invalid use of incomplete type" だとか, "error: enclosing class templates are not explicitly specialized" などのエラーが発生する.しかし,現実には,部分特殊化したいことも多い.そこで,やや強引な解決策を実装してみた. 問題提起 template <typename T1, typename T2> struct TTest { T1 ex() { ... } }; template <> void TTest<void, void>::ex() // OK { ... } これは,メンバ関数 TTest::

    メンバ関数の部分特殊化がしたい - akihiko’s tech note
  • Lockfree Queue

    Event : Visual Studio Users Community Japan #1 Date : 2019/09/14 ソフトウェア/サービス開発において最も後回しにされるものの代表が「パフォーマンスの向上」です。C#/.NET の最大の武器は開発生産性ですが、C# 7.0 以降はパフォーマンス向上のための機能追加が多数行われています。いくつかのポイントを押さえることで実装時からより高速なコードを書くことができるようになります。 このドキュメントでは、そんなポイントとなる箇所をふんだんにお届けします。

    Lockfree Queue