我是C++和这个网站的新手,所以肯定会有错误.当我尝试编译我的代码时,我得到的错误就像error: missing template argument before 'b'.几个小时以来,我一直在寻找世界的答案,这让我在这里.
我的任务是实现一个模板化的类Collection,它使用数组存储一个Object集合,以及集合的当前大小.
#include <iostream>
#include "collection.h"
using namespace std; v
int main(int argc, char* argv[])
{
collection b; //<----error missing template argument before 'b'
return 0;
}
Run Code Online (Sandbox Code Playgroud)
#ifndef COLLECTION_H
#define COLLECTION_H
#include <iostream>
template <typename obj>
class collection
{
public:
collection();
bool isEmpty() const;
void makeEmpty();
void insert(obj val);
void remove(obj val);
bool contains(obj val) const;
private:
size_t size;
obj* col[];
};
#endif
Run Code Online (Sandbox Code Playgroud)
#include "collection.h"
template <typename obj>
collection<obj>::collection() :size(10)
{
col = …Run Code Online (Sandbox Code Playgroud)