【发布时间】:2013-03-09 10:13:32
【问题描述】:
我正在尝试在 VS 2010 中重建一个旧的 VC++ 项目。它目前正在吐出一个 Invalid template argument 错误。
我必须添加.template keyword 吗?在哪里?
完整的错误如下:
错误 C2975:“N”:ToChunkFunc 的模板参数无效,预期的编译时常量表达式
【问题讨论】:
-
我感觉这是因为
__LINE__可能不被视为编译时间常数。 -
@Geotarget
__LINE__是一个宏,扩展为__FILE__中的当前行号,扩展为文件名。 -
@TonyTheLion:
__LINE__是一个编译时常量,因为作为预定义的宏,它在预处理时被替换,即在“真正的”编译发生之前。
标签: c++ templates visual-c++ compiler-errors