Аргументы шаблона класса (VC6.0 vs VC++7 NET)
От: Art Россия  
Дата: 17.02.03 16:07
Оценка:
Поясните плиз кто в этой ситуации прав(ближе к стандарту):
При компиляции такого кода:

//-------------------------------Templ.h----------------
template<class T, T defval = T()>
class alloc_pool {
public:
      alloc_pool() {};
      ~alloc_pool() {};
};
//-------------------------------End of Templ.h----------------


//-------------------------------Templ.cpp-----------------------
#include "Templ.h"

void main(){
    alloc_pool<int> a;
}
//-------------------------------End of Templ.cpp----------------



VC6.0 прекрасно компилирует и код выполняется

VC7.NET сообщает:

Templ.h error C2975: 'alloc_pool' : invalid template argument for 'defval', constant expression expected


И что с этим делать?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.