C ++ странная структура и ошибка набора - PullRequest
0 голосов
/ 10 сентября 2011

У меня есть это в моих объявлениях частного класса

#include "stdafx.h"
using namespace std;
    template <typename Key, typename T>
    class A{
    //....
    private:
        static const unsigned int HSIZE = 32;
        struct Bucket {
            Key key;
            T value;
            bitset<HSIZE> jumpMap;
        };
    //....
    };

Выдает следующие ошибки:

Error   1   error C4430: missing type specifier - int assumed
Error   2   error C2059: syntax error : '<'
Error   3   error C2238: unexpected token(s) preceding ';'

И когда я удаляю строку bitset, это не дает мне ошибок. Что я делаю не так?

РЕДАКТИРОВАТЬ: Добавлено больше соответствующих строк

Ответы [ 2 ]

3 голосов
/ 10 сентября 2011

Вы включили заголовок bitset? Я думаю, что вы пропустили это?

2 голосов
/ 10 сентября 2011

Должен ли HMAX быть HSIZE вместо этого? В противном случае убедитесь, что вы включили и что имя находится в области видимости. Возможно, в вашем коде используется пространство имен std, так как вы не определяете его с помощью std ::. Но моя ставка идет на HMAX <-> HSIZE.

...