2011-06-10から1日間の記事一覧

謎の警告 - デストラクタ呼び出しで未使用変数警告

Visual C++ 2010で警告レベルを4にすると、以下のプログラムで未使用変数の警告が出てしまう。 template <class T> struct Destruct { void f(T* p) // warning C4100: 'p' : 引数は関数の本体部で 1 度も参照されません。 { p->~T(); } }; struct X {}; int main() {</class>…

配列メンバ変数の初期化

C++

最近Boostばかりなので、たまにはC++0xの話でも。C++0xのUniform Initialization(一様初期化)によって、メンバ変数としての配列を、コンストラクタの初期化子リストで初期化できるようになります。 以下、GCC 4.6では動作します。 #include <iostream> struct X { int </iostream>…