预期的类型说明符' ...'代币

时间:2015-03-16 23:10:32

标签: c++ visual-studio mingw

expected type-specifier before '...' token

这是代码

template< typename T, int t_nFixedBytes = 128, class Allocator = CCRTAllocator >
class CTempBuffer
{
public:
    CTempBuffer() throw() :
        m_p( NULL )
    {
    }
    CTempBuffer( size_t nElements )   throw( ... ) : <---ERROR HERE
        m_p( NULL )
    {
        Allocate( nElements );
    }
...
}

现在,如果我摆脱上述语句中的throw(...),则会解决此错误。有关为什么Mingw不喜欢throw(...)的建议?

1 个答案:

答案 0 :(得分:2)

实际上,throw(...)不是标准的c ++语法,而是MSVC ++特定的扩展。它只是意味着这个函数可以抛出任何异常,这相当于没有异常规范,所以你可以安全地删除它。