Ошибка Cfitsio в VC ++ 6.0 - PullRequest
       11

Ошибка Cfitsio в VC ++ 6.0

1 голос
/ 27 марта 2011

Я взаимодействую с двумя программами, среди которых одна использует библиотеку sfits для обработки подходящих изображений, при компиляции программы она показывает ошибку в файле XLOCALE, который находится в папке vc98 / include, я использую vc 6.0 с XP,

ошибка: ошибка C2955: «ctype»: использование шаблона класса требует списка аргументов шаблона C: \ Program Files \ Microsoft Visual Studio6 \ VC98 \ INCLUDE \ xlocale (513): см. Объявление «ctype»

ошибка указывает на строку: int fits_get_compression_type (fitsfile * fptr, int * ctype, int * status);

и в файле XLOCALE указывает на:

template<class _E>
        class ctype : public ctype_base {
public:
        typedef _E char_type;

        ctype(const _Locinfo& _Lobj, size_t _R = 0)
                : ctype_base(_R) {_Init(_Lobj); }
        static size_t __cdecl _Getcat()
                {return (_LC_CTYPE); }
_PROTECTED:
        virtual ~ctype()
                {if (_Ctype._Delfl)
                        free((void *)_Ctype._Table); }
protected:


        virtual const _E *do_narrow(const _E *_F, const _E *_L,
                char, char *_V) const
                {for (; _F != _L; ++_F, ++_V)
                        *_V = (char)_NARROW(_E, *_F);
                return (_F); }
private:
        _Locinfo::_Ctypevec _Ctype;
        };
template<class _E>
        locale::id ctype<_E>::id;

Заранее спасибо ...

1 Ответ

1 голос
/ 27 марта 2011

ctype - это шаблон для типа, а не сам тип. Ваш параметр должен быть ctype<char> или ctype<wchar_t> в зависимости от того, какой тип символов вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...