Перейти к содержанию

Не комплирует


Рекомендуемые сообщения

class CCookie
{ private:
    ...............
    void Set(const std::string &Name,const std::string &Value,const long MaxAge=whileOpen)
    { if (Value.size()>0 && MaxAge)
        CookieMap[Name]=Value;
      else { StrMap::iterator i=CookieMap.find(Name);
             if (i!=CookieMap.end()) CookieMap.erase(i);
           }
      OutStr+="Set-Cookie: "+Name+'='+(Value.size()
                                       ?(Name==LoginMark() || Name==PasswordMark())
                                       ?CCript::Coder(rand(),Value):Value:"x")
                                     +(MaxAge==whileOpen?_:"; Max-Age="+inttostr(MaxAge))
                                     +'\n';
      RefreshMap[Name]=true;
    }
  public:
    static const long week4=3600*24*7*4;
    static const long year4=week4*52;
    static const long whileOpen=-1;
    ................
} Cookie;


"Раньше все работало".
После замены FreeBSD 6 на 7 перестала компилироваться программуля.

g++ index.cpp -oindex.cgi при линковке сообщает об отсутствии CCookie::week4, CCookie::year4 и CCookie::whileOpen.

Пришлось константы вынести за пределы класса.

Язык знаю плохо и в компиляции не разбираюсь, но очень хочется докопаться до причин.

Спасибо.
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...