В тексте, который вы заменили "..." (там целый абзац) я говорю о том, что C++ сам управляет ресурсами. А если вы используете new/delete, то вы берёте управление в свои руки и отказываетесь от услуг С++. Я не делаю акцента на словах new и delete; акцент на слове «управлять».
Погодите! :-)
Нет никакой связи между миносяторами и теми, кому не интересна статья. Первые — это дейстительно… э… закомплексованные люди. Вторые могут быть вполне вменяемыми людьми, просто они не программируют на с++. Эти множества никак не связаны… это как круглое и красное :-)
При этом му[yes]ки — это третий класс, про который тут речи нет вообще.
Это совсем другой класс!
Из-за ссылок для него нужно иначе писать конструкторы копирования и операции присваивания… он даже при линковке ведёт себя иначе!
Это просто другой случай, не обсуждаемый здесь и заслуживающий отедльной заметки.
Это понятно :-)
Но грабли приходится ловить за долго до того как релизить :-)
А на счёт грязных проектов… к сожалению не всегда весь код твой… часто приходится мириться с чужими ворнингами. Очень часто. И часто это связано даже не с небрежностью программистов, а с разными версиями компилляторов, операционок, библиотек… на которых велась разработка… В общем, я не верю, что старый кросплатформенный проект может собираться прям вот везде без ворнингов.
А про всяких тыкателей… я вижу два резона на то, что бы не заморачиваться по этому поводу.
1) На мой взгляд, статья не обязана быть интересна всем. Если она окажется интересна 5% читателей — это уже отлично. Ну кому-то не нравится… пусть не читает или напишет так, как нравится ему. В этом, как мне кажется, нет ничего страшного.
2) Нужно учитывать природу минусяторов и относиться к ним снисходительно. Большинство минусяторов ничем особо не интересуется (кроме, пожалуй, вопросов тайм-менеджмента, сводящихся к «чем же наконец заняться-то?»). Так как минусятору очень скучно и нечего делать, он слоняется по хабру и прочим интернетам, но нигде не находит ничего, что его бы потешило. Это бездарное времяпрепровождение делает его нервным, вспыльчивым и социально активным. И тут-то он начинает всех минусовать :-)
Я верю, что существует множество неминусяторов. Они не очень заметны потому, что читают хабр не каждый день и пишут комменты не каждую неделю :-) Но они совершенно вменяемы и им-то как раз были бы интересны статьи, выходящие за рамки темы «как же закрыть аську и делом-то наконец заняться?» :-)
Я полностью согласен с вами, что всегда есть выход лучше. Но чтобы понять, что именно он лучше, хорошо бы знать про возможные грабли, согласитесь ,-)
Кроме того, есть два важных аспекта:
1) Ваши предложения не всегда прокатят
2) Существуют ситуации, когда решение с инициализацией просто само просится. Классика:
A(int x): vectorSize(x+1), vector(vectorSize) {}
Часто, такое решение возникает эволюционно: сперва наблюдается
A(int x): vector(x+1) {}
потом оказывается, что хорошо бы хранить размер и рождется
A(int x): vectorSize(x+1), vector(vectorSize) {}
Так вот. Пост о том, что при этом возможны грабли.
а вот так ругается
$ c++ -Wall 2.cpp
2.cpp: In constructor 'A::A(int)':
2.cpp:26: warning: 'A::b' will be initialized after
2.cpp:25: warning: 'S A::a'
2.cpp:28: warning: when initialized here
Крик души: Вот почему на хабре положительные коменты только в приват можно писать?!!! Что за сообщество такое??! Как напишешь «автор молодец», так сразу минусуют. Люди просто боятся писать положительные отзывы! «Или чмори, или проваливай с хабра!» (мне самому пишут позитив и конструктив только в приват! я не устаю поражаться!) Ну что за хрень?!
По делу:
1) И я — в пример; или мне этот пример уже нельзя использовать? кабинка занята? ,-)
2) Замечание «На друпале «из коробки» радоваться нечему, надо многое сделать, чтобы получить, например, простой качественный сайт-визитку.», конечно, обогатило мой внутренний мир; но сайт про Старицу доставил мне на много болше эстетического удовольствия (и без всякого друпала).
Я не понимаю, зачем нападать на автора сайта. Он сделал хороший сайт, красивый (ну… не уродский точно :-)) информативный (хотя, очень нехватает раздела «где остановиться»)… При чёт тут друпал (или не друпал)?
Вы извините, но я хочу несогласиться :-)
Те кого возбуждает друпал, могут скачать его себе и… радоваться. А те, кому интересно узнать про Старицу, я думаю, с удовольствием почитают этот сайт.
Я почитаю с удовольствием! Автору спасибо!
Нет никакой связи между миносяторами и теми, кому не интересна статья. Первые — это дейстительно… э… закомплексованные люди. Вторые могут быть вполне вменяемыми людьми, просто они не программируют на с++. Эти множества никак не связаны… это как круглое и красное :-)
При этом му[yes]ки — это третий класс, про который тут речи нет вообще.
Из-за ссылок для него нужно иначе писать конструкторы копирования и операции присваивания… он даже при линковке ведёт себя иначе!
Это просто другой случай, не обсуждаемый здесь и заслуживающий отедльной заметки.
Но грабли приходится ловить за долго до того как релизить :-)
А на счёт грязных проектов… к сожалению не всегда весь код твой… часто приходится мириться с чужими ворнингами. Очень часто. И часто это связано даже не с небрежностью программистов, а с разными версиями компилляторов, операционок, библиотек… на которых велась разработка… В общем, я не верю, что старый кросплатформенный проект может собираться прям вот везде без ворнингов.
А про всяких тыкателей… я вижу два резона на то, что бы не заморачиваться по этому поводу.
1) На мой взгляд, статья не обязана быть интересна всем. Если она окажется интересна 5% читателей — это уже отлично. Ну кому-то не нравится… пусть не читает или напишет так, как нравится ему. В этом, как мне кажется, нет ничего страшного.
2) Нужно учитывать природу минусяторов и относиться к ним снисходительно. Большинство минусяторов ничем особо не интересуется (кроме, пожалуй, вопросов тайм-менеджмента, сводящихся к «чем же наконец заняться-то?»). Так как минусятору очень скучно и нечего делать, он слоняется по хабру и прочим интернетам, но нигде не находит ничего, что его бы потешило. Это бездарное времяпрепровождение делает его нервным, вспыльчивым и социально активным. И тут-то он начинает всех минусовать :-)
Я верю, что существует множество неминусяторов. Они не очень заметны потому, что читают хабр не каждый день и пишут комменты не каждую неделю :-) Но они совершенно вменяемы и им-то как раз были бы интересны статьи, выходящие за рамки темы «как же закрыть аську и делом-то наконец заняться?» :-)
Так к чему это я… не опускайте руки! :-)
вот этот пример не соберётся
#include class S {
public:
S(int x) {}
};
class A {
private:
S a;
public:
A() { a(1); }
};
int main() {
A a();
return 0;
}
а если заменить
A() { a(1); }
на
A(): a(1) {}
то всё будет хорошо.
2) Опять же, vector можно засунуть в тело, только если есть конструктор vector::vector().
Кроме того, есть два важных аспекта:
1) Ваши предложения не всегда прокатят
2) Существуют ситуации, когда решение с инициализацией просто само просится. Классика:
A(int x): vectorSize(x+1), vector(vectorSize) {}
Часто, такое решение возникает эволюционно: сперва наблюдается
A(int x): vector(x+1) {}
потом оказывается, что хорошо бы хранить размер и рождется
A(int x): vectorSize(x+1), vector(vectorSize) {}
Так вот. Пост о том, что при этом возможны грабли.
A(int x): b(x+1), a(b) {}
вы всё равно скажете, что лучше
A(int x): b(x+1), a(x+1) {}
$ c++ 2.cpp
а вот так ругается
$ c++ -Wall 2.cpp
2.cpp: In constructor 'A::A(int)':
2.cpp:26: warning: 'A::b' will be initialized after
2.cpp:25: warning: 'S A::a'
2.cpp:28: warning: when initialized here
По делу:
1) И я — в пример; или мне этот пример уже нельзя использовать? кабинка занята? ,-)
2) Замечание «На друпале «из коробки» радоваться нечему, надо многое сделать, чтобы получить, например, простой качественный сайт-визитку.», конечно, обогатило мой внутренний мир; но сайт про Старицу доставил мне на много болше эстетического удовольствия (и без всякого друпала).
Я не понимаю, зачем нападать на автора сайта. Он сделал хороший сайт, красивый (ну… не уродский точно :-)) информативный (хотя, очень нехватает раздела «где остановиться»)… При чёт тут друпал (или не друпал)?
Те кого возбуждает друпал, могут скачать его себе и… радоваться. А те, кому интересно узнать про Старицу, я думаю, с удовольствием почитают этот сайт.
Я почитаю с удовольствием! Автору спасибо!