- 322 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 15:11:46 ]
- #include <iostream>
struct A { A(){ std::cout << "A" << std::endl; } ~A() { std::cout << "~A" << std::endl; } template<class T> static void func() { std::cout << "func" << std::endl; } }; int main() { A().func<int>(); return 0; } 以上のプログラムを実行すると vc, gccでは A func ~A と出力され、bccでは func ~A と表示されました。 コンストラクタが呼ばれないのはbccのバグでしょうか? ちなみにメンバ関数にtemplateを使わなかったりstaticでなければ問題なくコンストラクタは呼ばれるようです。
|

|