Ну а контейнеры то всякие, да auto_ptr-ы, итп, оны все всегда определяют конструкторы копии, и оператор копирования, да и вообще, имхо хороший стиль — явно либо запретить копирование, либо написать корректные операторы копии и констр копирования.
Никакой STL-ный шаблон не будет иметь конструкторов копии дефолтных, везде все переопределено 10 раз ;)
Ну а контейнеры то всякие, да auto_ptr-ы, итп, оны все всегда определяют конструкторы копии, и оператор копирования, да и вообще, имхо хороший стиль — явно либо запретить копирование, либо написать корректные операторы копии и констр копирования.
Никакой STL-ный шаблон не будет иметь конструкторов копии дефолтных, везде все переопределено 10 раз ;)
да-да-да! золотые слова :)
не помню где видел правило: если написан хотя бы один из методов в тройке «конструктор» / «деструктор» / «конструктор копии» то рекомендуется дописать и остальные (в случае с конструктором копии хотя бы просто запретить вызов) :)
вопрос в том что для того чтобы это осознать нужно пройти некоторый путь, в самом же начале знакомства с С++ данные рассуждения совсем не очевидны
>Если вы об этом. Go просто дописывает ";" в конец каждой строки автомато, так что его можно не писать, но это не значит, что нельзя комкать все в одну строчку.
Уточни, Go дописывает, или IDE дописывает? А то виделе ли если судить по IDE то ЯП так не сравнить
> Уточни, Go дописывает, или IDE дописывает? А то виделе ли если судить по IDE то ЯП так не сравнить
По моему все предельно ясно написано:
[quote]
Go code uses very few semicolons in practice. Technically, all Go statements are terminated by a semicolon. However, Go treats the end of a non-blank line as a semicolon unless the line is clearly incomplete (the exact rules are in the language specification). A consequence of this is that in some cases Go does not permit you to use a line break. For example, you may not write
...
[/quote]
И таки да, вы будете удевлены, но у Go нет никакой IDE, ни «стандартной» ни ильтернативных, вообще никаких. Можно конечно к тому-же eclipse-у цепануть, но это удел первокуров не осиливших как можно работать с кодом без IDE.
>хватит уже ваньку валять - ничего в синтаксисе шаблонов страшного нет
и да, ты можешь отмазываться, но то что ты называешь синтаксис «страшным» означает что ты его использование не осилил
Все познаётся в сравнении, а сравнивать можно с haskell. Более простой и понятный синтаксис и вполне вменяемый отчёт об ошибках в случае очепятки. Кому после этого захочется писать шаблоны на плюсах?(экстремалы и мазохисты не в счёт)
вполне вменяемый отчёт об ошибках в случае очепятки
это зависит от компилятора, а не от языка, и да - зная строку ошибки и имея выхлоп компилятора с описанием разворачивания шаблона, найти очипятку не составляет труда
>и да, ты можешь отмазываться, но то что ты называешь синтаксис «страшным» означает что ты его использование не осилил
Все познаётся в сравнении, а сравнивать можно с haskell.
хахаха :) тогда надо говорить «синтаксис шаблонов, по сравнении с тем как это делается в haskell, обладает рядом недостатков» (это для примера, а совсем не как утверждение)... ну, даже если и так, что с того? мне вот lisp больше нравится чем haskell, теперь haskell - гогно?
Более простой и понятный синтаксис и вполне вменяемый отчёт об ошибках в случае очепятки.
как это делает синтаксис (!) шаблонов c++ страшным?
Кому после этого захочется писать шаблоны на плюсах?(экстремалы и мазохисты не в счёт)
тому кто пишет на плюсах, ни больше ни меньше *surprise*?
Т.е. мне сейчас надо пойти и искать C++ проект с шаблонами (у меня то их нет), что б привести тебе какой-то мифически пруф, который ничего не скажет? Смысл? Для тебя это ничего не изменит. Валяй ваньку дальше, негодник :}
Ужасно этим пользоваться. Потом люди рассказывают, что XML сложен для понимания :) Т.е. я не говорю, что понять это нельзя, но портянка получается не слишком приятная.