模板参数初始化

时间:2010-06-11 10:24:04

标签: c++ templates warnings valgrind

我写了一些C ++代码,其中我使用了模板。由于我使用了模板,因此我无法初始化几个模板类变量。我收到了来自valgrind的警告信息,说条件跳转或移动取决于未初始化的值。那么有没有办法解决这个问题和/或初始化模板变量?我无法想到一种方法,因为即使我将它们初始化为NULL,当我使用字符串数据类型时,也会发生运行时故障。

谢谢!

1 个答案:

答案 0 :(得分:5)

这只是猜测你的问题,所以如果它错了请忽略它。

IIUC,您的问题是,使用模板参数,您无法正确默认初始化内置函数和用户定义的类型。解决这个问题的方法是:

T obj = T();

这适用于内置函数和UDT。