lea*_*vst 18 c++ arrays containers c++11
这里有一个简单的问题.我试图使用std::array并在第一个障碍中绊倒错误...
implicit instantiation of undefined template 'std::__1::array<char,10>'
Run Code Online (Sandbox Code Playgroud)
给出错误的代码如下所示.我现在可以解决它std::map,但我确定修复必须简单!
enum p_t {
EMPTY = 0
,BORDER_L
// ...
,BORDER_BR
,DATUM
,NUMEL };
class PlotChars
{
array<char, p_t::NUMEL> charContainer;
// error on this ^ line:
// implicit instantiation of undefined template 'std::__1::array<char,10>'
};
Run Code Online (Sandbox Code Playgroud)
Jer*_*fin 48
我的第一个猜测就是你忘了:
#include <array>
Run Code Online (Sandbox Code Playgroud)
...在尝试使用array模板之前.虽然你可以(至少间接地)使用几个类而不包括标题(例如,编译器可以在没有包含任何标题的情况下创建std::initializer_list类似的东西{1, 2, 3})在大多数情况下(包括std::array)你需要在使用类模板之前包含标题.