语法错误:在“ <”之前缺少“,”

阿巴斯

我花了很长时间才开始使用c ++进行编码,也许我在语法上缺少一些明显的东西,但是我已经搜索了很长时间了,在任何地方都找不到对我的问题的参考。我试图创建一个自定义的C ++类setmultiset

这是我的班级cset.h

#pragma once
#include <set>
#include "cmultiset.h"

template <class Type>

class Set : public set<Type>
{
private:

public:
    void add(Type &);
};

这是我的cmultiset.h

#pragma once
#include <set>

template <class Type>

class MultiSet : public multiset<Type>
{
private:

public:
    bool operator < (MultiSet <Type> &);
};

我在这里想要做的是Set<MultiSet<int>>在我的驱动程序类中创建一个但出现以下错误两次,每次文件,而不是在上面的头文件class Set : public set<Type>class MultiSet : public multiset<Type>

syntax error: missing ',' before '<'

我不知道如何解决此错误。

如果我只使用set<MultiSet<int>>一切,一切正常:No Errors no warning(我必须using namespace std;在模板之前添加)。但是,当我使用Set<MultiSet<int>>它会给出错误,using namespace std并且不起作用。

编辑1:

错误:

Severity    Code    Description Project File    Line    Suppression State
Error   C2143   syntax error: missing ',' before '<'    Integer Sets Analyzer   c:\users\abbas\documents\mega\personal projects\integer sets analyzer\integer sets analyzer\cmultiset.h 6   
Error   C2143   syntax error: missing ',' before '<'    Integer Sets Analyzer   c:\users\abbas\documents\mega\personal projects\integer sets analyzer\integer sets analyzer\cmultiset.h 6   
Error   C2143   syntax error: missing ',' before '<'    Integer Sets Analyzer   c:\users\abbas\documents\mega\personal projects\integer sets analyzer\integer sets analyzer\cset.h  7   
Error   C2143   syntax error: missing ',' before '<'    Integer Sets Analyzer   c:\users\abbas\documents\mega\personal projects\integer sets analyzer\integer sets analyzer\cmultiset.h 6   
Error   C2143   syntax error: missing ',' before '<'    Integer Sets Analyzer   c:\users\abbas\documents\mega\personal projects\integer sets analyzer\integer sets analyzer\cset.h  7   

编辑2:

这是我的main.cpp

#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
#include <conio.h>
#include "cmultiset.h"
#include "cset.h"

using namespace std;

int main()
{
    Set<MultiSet <int>> intSet;

    intSet.clear();

    _getch();

    return 0;
}

这是我的MultiSet.cpp

#pragma once
#include "stdafx.h"
#include "cmultiset.h"

using namespace std;

template <class Type>
bool MultiSet<Type>::operator < (MultiSet<Type> & cmpSet)
{
    if (this->size() < cmpSet.size())
    {
        return true;
    }
    else if (this->size() > cmpSet.size())
    {
        return false;
    }

    for (multiset<Type>::iterator it = this->begin(), jt = cmpSet.begin(); it != this->end(), jt != cmpSet.end(); ++it, ++jt)
    {
        if (*it < *jt)
            return true;
    }

    return false;
}

这是我的Set.cpp

#pragma once
#include "stdafx.h"
#include "cset.h"

using namespace std;

template <class Type>
void Set<Type> :: add(Type & entry)
{
    set<Type>::insert(entry);
}
毫米

class Set : public set<Type>,它应该std::set代替set

否则,编译器会给出语法错误,因为它没有意识到set是一个类模板。

multiset下一部分存在类似的问题

注意 标准容器不是要从中继承;考虑改用遏制(例如,将容器作为成员变量)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Qt C ++ C2143:语法错误:缺少';' 在“ *”之前

来自分类Dev

模板类抛出错误C2143:语法错误:缺少';' 在“ <”之前

来自分类Dev

语法错误:Javascript中缺少指数

来自分类Dev

错误C2143:语法错误:缺少';' 在“使用”之前

来自分类Dev

未知的班级?C2143语法错误:缺少“;” 在“ *”之前

来自分类Dev

BASH语法错误-[:缺少`]'

来自分类Dev

错误1错误C2143:语法错误:缺少';' 在“ <class-head>”之前

来自分类Dev

为什么会出现语法错误:缺少';' 在“ *”之前

来自分类Dev

verilog错误:语法错误-是否缺少'::'?

来自分类Dev

SQL语法错误:“缺少右括号”

来自分类Dev

语法错误:缺少';' 在“类型” C代码之前

来自分类Dev

语法错误:Javascript中缺少指数

来自分类Dev

错误C2143:语法错误:缺少';' 在“使用”之前

来自分类Dev

MySQL语法错误:我缺少什么?

来自分类Dev

VC ++错误C2146:语法错误:标识符'pFirst'之前缺少')'

来自分类Dev

Javascript语法错误-缺少)

来自分类Dev

语法错误:缺少:属性ID之后

来自分类Dev

链表错误:语法错误:缺少“;” 在标识符“ head”之前

来自分类Dev

实现跳过列表,语法错误:在';'之前缺少')'

来自分类Dev

函数的语法错误-缺少参数

来自分类Dev

错误C2143:语法错误:缺少';' 在'<'C ++之前

来自分类Dev

错误:C2146:语法错误:缺少';' 在标识符“ m_Employer”之前,

来自分类Dev

语法错误:缺少; 声明前

来自分类Dev

JavaScript 语法错误:缺少正式参数

来自分类Dev

缺少语法错误

来自分类Dev

TSQL 语法错误:缺少“if”

来自分类Dev

错误 C2143:语法错误:在“const”之前缺少“,”

来自分类Dev

显式链接错误 - 语法错误:缺少“;” bazel 编译时在 '*' 之前

来自分类Dev

js 语法错误:缺少 ) 参数后

Related 相关文章

  1. 1

    Qt C ++ C2143:语法错误:缺少';' 在“ *”之前

  2. 2

    模板类抛出错误C2143:语法错误:缺少';' 在“ <”之前

  3. 3

    语法错误:Javascript中缺少指数

  4. 4

    错误C2143:语法错误:缺少';' 在“使用”之前

  5. 5

    未知的班级?C2143语法错误:缺少“;” 在“ *”之前

  6. 6

    BASH语法错误-[:缺少`]'

  7. 7

    错误1错误C2143:语法错误:缺少';' 在“ <class-head>”之前

  8. 8

    为什么会出现语法错误:缺少';' 在“ *”之前

  9. 9

    verilog错误:语法错误-是否缺少'::'?

  10. 10

    SQL语法错误:“缺少右括号”

  11. 11

    语法错误:缺少';' 在“类型” C代码之前

  12. 12

    语法错误:Javascript中缺少指数

  13. 13

    错误C2143:语法错误:缺少';' 在“使用”之前

  14. 14

    MySQL语法错误:我缺少什么?

  15. 15

    VC ++错误C2146:语法错误:标识符'pFirst'之前缺少')'

  16. 16

    Javascript语法错误-缺少)

  17. 17

    语法错误:缺少:属性ID之后

  18. 18

    链表错误:语法错误:缺少“;” 在标识符“ head”之前

  19. 19

    实现跳过列表,语法错误:在';'之前缺少')'

  20. 20

    函数的语法错误-缺少参数

  21. 21

    错误C2143:语法错误:缺少';' 在'<'C ++之前

  22. 22

    错误:C2146:语法错误:缺少';' 在标识符“ m_Employer”之前,

  23. 23

    语法错误:缺少; 声明前

  24. 24

    JavaScript 语法错误:缺少正式参数

  25. 25

    缺少语法错误

  26. 26

    TSQL 语法错误:缺少“if”

  27. 27

    错误 C2143:语法错误:在“const”之前缺少“,”

  28. 28

    显式链接错误 - 语法错误:缺少“;” bazel 编译时在 '*' 之前

  29. 29

    js 语法错误:缺少 ) 参数后

热门标签

归档