LINUX.ORG.RU
ФорумTalks

непонятки с с++


0

0

есть кусок кода вида

struct header{
  std::string s1="aaa";
...
}

выдает такую ошибку, немогу понять - к чему именно это

mainclass.cpp:24: error: ISO C++ forbids initialization of member `s1'
mainclass.cpp:24: error: making `s1' static
mainclass.cpp:24: error: invalid in-class initialization of static data member
   of non-integral type `std::string'
anonymous

Инициализацию надо делать в конструкторе

Nagwal ★★★★
()
Ответ на: комментарий от Lumi

PS: Если отличается, может всё-таки создать экземпляр и там уже проводить инициализацию.

Lumi ★★★★★
()
Ответ на: комментарий от Pi

>ты бы книгу какую почитал...

почита Страуструпа, не писал он явно, что нельзя инициализировать объекты класса вне конструктора, вообще у меня это пережиток с си, все спасибо

anonymous
()
Ответ на: комментарий от anonymous

и еще вопрос, в проге надо будет создать екселевский файл, нашел для этого sptk http://sptk.tts-sf.com - вот незнаю, лучший ли это вариант, просто нехочетися лишний раз на грабли наступать

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.