[c++] не компилируется. Где ошибка?

Olenenok

class CHeaderProcessor
{
private:
// Несколько статических констант класса
const static unsigned nHeaderItems = 9; // Количество обрабатываемых заголовков
const static char HeaderName[nHeaderItems][48] = // Имена обрабатываемых заголовков
{
"HTTP/",
"Date: ",
"Content-Type: ",
"Accept-Ranges: ",
"Content-Range: ",
"Content-Length: ",
"Set-Cookie: ",
"Location: ",
"Connection: "
};
const static int (*pHeaderProcessorconst char* pLine, SHttpResponseHeader& ResponseHeader)[nHeaderItems] =
{
&SaveStatusLine, &SaveDate, &SaveContentType, &SaveAcceptRanges,
&SaveContentRange, &SaveContentLength, &SaveCookie, &SaveLocation, &SaveConnection
}; // Это адреса обработчиков соответствующих заголовков
};
Отказывается компилировать, в чём ошибка. SHttpResponseHeader - просто структура.

bleyman

А не пробовал посмотреть, в чём ошибка?

tipnote

>Отказывается компилировать
Мля, есть разные компиляторы. Поэтому надо бы вывод компилятора показывать. Да и вообще не заставлять людей открывать редакторы и проверять.
К примеру, g++ говорит так:
invalid in-class initialization of static data member of
non-integral type `const char[9][48]'

tevlev

Извините, что не привёл ругань компилятора. Вот она (VSC++ .NET 2003).
d:\documents and settings\хозяин\мои документы\visual studio projects\resolve header\headerprocessor.h(30) : error C2059: syntax error : '{'
d:\documents and settings\хозяин\мои документы\visual studio projects\resolve header\headerprocessor.h(30) : error C2334: unexpected token(s) preceding '{'; skipping apparent function body
d:\documents and settings\хозяин\мои документы\visual studio projects\resolve header\headerprocessor.h(41) : error C2090: function returns array
d:\documents and settings\хозяин\мои документы\visual studio projects\resolve
header\headerprocessor.h(42) : error C2059: syntax error : '{'
d:\documents and settings\хозяин\мои документы\visual studio projects\resolve header\headerprocessor.h(42) : error C2334: unexpected token(s) preceding '{'; skipping apparent function body
Я пытаюсь создать два константных статических массива: из указателей на строки и указателей на функции.

tevlev

Каждый раз забываю, статические члены определяются вне класса. Ветвь закрыта.
Оставить комментарий
Имя или ник:
Комментарий: