|
|
|
C или C++
|
|||
|---|---|---|---|
|
#18+
C или C++ Странная статья. Кто-нибудь сталкивался с ошибками в современных популярных компиляторах? Кто-нибудь сталкивался с ошибками в современных популярных библиотеках? У меня на эти вопросы 2 нет. Поэтому резюме мне кажется странным. Поделитесь опытом. А так же - на счет работы программы на С++ в режиме 24/7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 16:28 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
статья г. даже обсуждать нечего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:17 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. у меня есть программы которые работают неделями, но по независящим от них причинам не работают годами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
alex_kстатья г. даже обсуждать нечего Т.е. все доводы просто придуманы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Угу. Давайте все дружно на ассемблер пересядем. Там копмилятор проще не бывает, и, следовательно, ошибок в нем меньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Гавриленко Сергей АлексеевичУгу. Давайте все дружно на ассемблер пересядем. Там копмилятор проще не бывает, и, следовательно, ошибок в нем меньше. Я про доводы, которые он приводит. Собственно, вопросы, которые я задал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:25 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
alex_k ak> int main() ak> { ak> while(true); ak> return 0; ak> } ak> вот программа 24х7. эх, зачем же так грузить проц ? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:30 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Карабас Барабасда еще сутками Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 18:32 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
а ему не пофиг что делать? или венда его грузить будет своим idle process или я :) пусть работает короче :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 20:58 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
действительно, странная статья. доводы какие то надуманные: автор Собственно поэтому можно уже сейчас оценить круг задач, которые лучше решать при помощи C++, чем C (при наличии, конечно же, хороших навыков программирования в обоих языках): это практически все программы, от которых не требуется беспрерывная работа 24 часа в сутки. Очень неприятно обнаружить, что программа, которая писалась и отлаживалась на каких-то тестовых примерах, не может выдержать реальной нагрузки и проблема кроется именно в том, что где-то глубоко внутри библиотеки, поставляемой с компилятором, не был реализован механизм блокировки доступа к разделяемому ресурсу. а что, с++ знает что то о потоках и синхронизации? или это я отстал от жизни? авторВ таких случаях выбор языка программирования C вместо C++ более предпочтителен, так как даст возможность изначально уменьшить количество непонятных проблем, возникающих в реальной эксплуатации программного продукта. ну это если только для гуру, для которого решение проблем типа 1) ошибки в своем коде(коде коллеги) 2) неправильно настроенное окружение (операционка там, и т.д.) 3) ошибки в библиотеке ОС (а скорее всего опять же неправильное толкование кем либо работы используемой им библиотечной функции) не вызывают никаких затруднений, и он начинает подозревать компилятор. ошибки компилятора? теоретически может быть и такое, но по сравнению с п. 1)-3) они ->0 вывод: писал либо ужасный гуру, либо человек, который не знал о чем написать, но очень хотел, и высосал из пальца проблему, которую 99% разработчиков никогда не встретят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 22:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
aфтор C позволяет программистам максимально контролировать (для языка программирования высокого уровня) программу, а C++ идет по пути усложнения компилятора, чтобы позволить программисту писать программу как ему будет "удобно". При этом, опять же, в идеальном случае, компилятор языка поймет желание программиста и полученный код будет все равно максимально эффективным (или близким к эффективному). С одной стороны, подход C++, не может не вызвать интереса и одобрения, так как дает возможность создания эффективных программ не снижая при этом их читабельность или удобство наращивания. Но с другой стороны --- повышение сложности компилятора сопряжено с различными трудностями, многие из которых до сих пор не преодолены . Что значит максимально контролировать? Что именно контролировать? Что до сих пор - не преодолимо? При этом стоит отметить потенциальную опасность C, который традиционно позволяет программисту делать все что угодно, зачастую пропуская его ошибки. Но эти ошибки выловить иногда значительно легче, чем объяснять различные странности , появляющиеся то тут, то там в программах на C++. О каких странностях толкует чел? Где пример? Короче... почитал.. и понял, что зря потерял время. Афтор - боянист и старый п$@дун. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2006, 23:02 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
alex_kвенда его грузить будет своим idle processначиная с NT4.0, винда останавливает процессор, когда он не загружен Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 07:50 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас КБ> начиная с NT4.0, винда останавливает процессор, когда он КБ> не загружена во-вторых, в многозадачной системе не работаешь сам - дай поработать другим - я так думаю :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 07:51 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
<>вывод: писал либо ужасный гуру, либо человек, который не знал о чем написать, но очень хотел, и высосал из пальца проблему, которую 99% разработчиков никогда не встретят. Да. У меня тоже сложилось такое впечатление. Но меня интересует обоснованность его доводов, о которых я написал в самом начале. Я так понимаю, у форума аналогичное со мной мнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 09:52 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
mayton aфтор C позволяет программистам максимально контролировать (для языка программирования высокого уровня) программу, а C++ идет по пути усложнения компилятора, чтобы позволить программисту писать программу как ему будет "удобно". При этом, опять же, в идеальном случае, компилятор языка поймет желание программиста и полученный код будет все равно максимально эффективным (или близким к эффективному). С одной стороны, подход C++, не может не вызвать интереса и одобрения, так как дает возможность создания эффективных программ не снижая при этом их читабельность или удобство наращивания. Но с другой стороны --- повышение сложности компилятора сопряжено с различными трудностями, многие из которых до сих пор не преодолены . Что значит максимально контролировать? Что именно контролировать? Что до сих пор - не преодолимо? При этом стоит отметить потенциальную опасность C, который традиционно позволяет программисту делать все что угодно, зачастую пропуская его ошибки. Но эти ошибки выловить иногда значительно легче, чем объяснять различные странности , появляющиеся то тут, то там в программах на C++. О каких странностях толкует чел? Где пример? Короче... почитал.. и понял, что зря потерял время. Афтор - боянист и старый п$@дун. По всем комментаримям - может, автор, просто за 7 лет, так и не понял логики С++? Отсюда и "не контроллируемость", "странности", и глюки в библиотеках и компиляторах. Ведь так легко все глюки сволить на компилятор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 09:55 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас Карабас Барабас КБ> начиная с NT4.0, винда останавливает процессор, когда он КБ> не загружена во-вторых, в многозадачной системе не работаешь сам - дай поработать другим - я так думаю :) Увы, имхо, не всегда так бывает, пока сам не позаботишься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 09:56 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
известный пример a<b<c>> d - это шаблоны или операции сравнения и сдвига? Я с ошибками компилятора не встречался, а про 24/7 думаю, автор имеет в виду такое дело, что если какой-то класс из стандартной библиотеки инкапсулирует работу с неким системным ресурсом, то он не предоставляет богатства исходного апи в полной мере. И если при использовании самого апи очевидно, требуется ли синхронизация, то при использовании библиотечного класса это может оказаться не очевидным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 13:53 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Зерно истины в статье есть. C++ действительно ОЧЕНЬ сложный язык. Но вывод безусловно параноидальный, хотя мне знакомы такие субъекты :) Перефразируя автора: Если программисту нравится C пусть на нем и пишет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 14:28 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Зерно истины в статье есть. C++ действительно ОЧЕНЬ сложный язык. Но вывод безусловно параноидальный, хотя мне знакомы такие субъекты :) Перефразируя автора: Если программисту нравится C пусть на нем и пишет :) Как на счет аргументов, которые он приводит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 14:47 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh Gluk (Kazan)Зерно истины в статье есть. C++ действительно ОЧЕНЬ сложный язык. Но вывод безусловно параноидальный, хотя мне знакомы такие субъекты :) Перефразируя автора: Если программисту нравится C пусть на нем и пишет :) Как на счет аргументов, которые он приводит? Криминала не обнаружил. Паранойя присутствует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 15:25 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Статья правильная. Написана человеком, немного знающим С и вообще толком не понимающего прелесть С++. Я тоже до конца не понимаю всех ньюансов и прога есть что-то вроде с-боразного с++, но написать легко большую программу с удобством переносимости и расширения, понятным интерфейсом трудно, но можно, что не у всех получается. Ну а на С это не так очевидно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:00 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) Akh Как на счет аргументов, которые он приводит? Криминала не обнаружил. Паранойя присутствует С ошибками сталкивался ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) Akh Как на счет аргументов, которые он приводит? Криминала не обнаружил. Паранойя присутствует С ошибками сталкивался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Den_diСтатья правильная. Написана человеком, немного знающим С и вообще толком не понимающего прелесть С++. Я тоже до конца не понимаю всех ньюансов и прога есть что-то вроде с-боразного с++, но написать легко большую программу с удобством переносимости и расширения, понятным интерфейсом трудно, но можно, что не у всех получается. Ну а на С это не так очевидно. Я, если жизнь не заставит, никогда не буду писать мало-мальски большой проект на С. Уже не предстовляю программирования без классов, шаблонов и, как раз не понятных автору статьи, но очень красивых констукций из всего этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:26 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh Gluk (Kazan) Akh Как на счет аргументов, которые он приводит? Криминала не обнаружил. Паранойя присутствует С ошибками сталкивался? Бывало. Скажем так, с нетривиальным поведением. Иногда объяснимым, иногда оставшимся загадкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:33 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) Akh С ошибками сталкивался? Бывало. Скажем так, с нетривиальным поведением. Иногда объяснимым, иногда оставшимся загадкой. Не может быть так, что это из-за непонимания С++? Что это, именно, компилятор или библиотека. Если можно - пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:36 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhНе может быть так, что это из-за непонимания С++? Что это, именно, компилятор или библиотека. Если можно - пример. 1. Возможно 2. Навскидку не вспомню Если в очередной раз на что напорюсь, опубликую в эту ветку (не обещаю чт это будет завтра) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:45 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) AkhНе может быть так, что это из-за непонимания С++? Что это, именно, компилятор или библиотека. Если можно - пример. 1. Возможно 2. Навскидку не вспомню Если в очередной раз на что напорюсь, опубликую в эту ветку (не обещаю чт это будет завтра) Ок. Не первый раз у меня этот вопрос возникает. И не обязательно в С++. Я, думаю, что в этом форуме, можно как раз и определить, глюк это компилятора или программиста. Пока более чем за пол года я не припомню ни одно случая, что виноват был компилятор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:48 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:04 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
выделение не получилось :) корректно будет: A<A<B> > a; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
но это же просто скобочки :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoно это же просто скобочки :) Сканер (который по стандарту отрабатывает раньше) считает иначе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:22 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoкорректный код? Компилятор g++ отловил неоднозначность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:26 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhКомпилятор g++ отловил неоднозначность.??? А ты можешь отловить неоднозначность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:27 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Т.к. распознал операции между классами. Код [SRC c++] int x,y,z; x<x<y>>z; /SRC] Отработает коректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:29 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhКомпилятор g++ отловил неоднозначность.??? А ты можешь отловить неоднозначность? Да. Т.к. классы сравнивать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 17:30 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
ну раз нельзя, значит нет неоднозначности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:39 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoну раз нельзя, значит нет неоднозначности Ну, да, вообще-то... Тогда ошибочное использование оператора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 11:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Афтар лузер адназначна. Даже не падписался как чилавег. С++ - действительно сложный язык и у него полно проблем, но не тех , что он называет в статье. Писать сейчас на С можно только если там нет компилятора С++ (но где их теперь нет ?) или .... да ну не знаю что должно случится, чтобы не писать на С++. Да, в реализациях STL есть ошибки ну и что - можно взять другой, можно ... Да ну не хочу даже говорить об этом, нашли блин эксперта.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:33 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь сталкивался с ошибками в современных популярных компиляторах? Да, в MSVC. Но ошибка заключалась в падении компилятора при обработке исходника с допустимой и валидной конструкцией (сложной, конечно). Конкретно - шаблоны, VC 5. Кто-нибудь сталкивался с ошибками в современных популярных библиотеках? Я сам не нарывался на ошибки в MSVC-реализации STL, но они были , их много зафиксировано в MS KB. Нарывался на ограничения реализации, но это другое. Я сам нарывался например на ошибку в коде MFC, связанную с кодом класса CFile. Это было в VC 2.0. Ну и что ? Это просто библиотека, что ж в ней ошибок не может быть ? А так же - на счет работы программы на С++ в режиме 24/7. Бред полный, дофига я думаю проектов 24/7 , написанных на С++. По крайней мере никакое свойство С++ не снижает способность программы работать 24/7. А одно так прямо -таки повышает - это exceptions. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZiv M> Афтар лузер адназначна. Даже не падписался как чилавег. M> С++ - действительно сложный язык и у него полно проблем, M> но не тех , что он называет в статье. M> Писать сейчас на С можно только если там нет компилятора M> С++ (но где их теперь нет ?) или .... да ну не знаю что M> должно случится, чтобы не писать на С++. M> Да, в реализациях STL есть ошибки ну и что - можно взять M> другой, можно ... M> Да ну не хочу даже говорить об этом, нашли блин M> эксперта.... сейчас модно это все одним словом выражать: КГ/АМ Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:42 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
а что, с++ знает что то о потоках и синхронизации? или это я отстал от жизни? Ни С, ни С++ не знают. Поэтому вообще упоминание этой проблемы в контексте С vs C++ - либо дешевая спекуляция, либо незнание. вывод: писал либо ужасный гуру, либо человек, который не знал о чем написать, но очень хотел, и высосал из пальца проблему, которую 99% разработчиков никогда не встретят. Во, вот именно. Статья ни о чем, ничего не дает, написана просто чтобы что-то написать. Ну да интерфейс в этом смысле очень характерный ресурс, там много такого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:43 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZivКто-нибудь сталкивался с ошибками в современных популярных компиляторах? Да, в MSVC. Но ошибка заключалась в падении компилятора при обработке исходника с допустимой и валидной конструкцией (сложной, конечно). Конкретно - шаблоны, VC 5. Кто-нибудь сталкивался с ошибками в современных популярных библиотеках? Я сам не нарывался на ошибки в MSVC-реализации STL, но они были , их много зафиксировано в MS KB. Нарывался на ограничения реализации, но это другое. Я сам нарывался например на ошибку в коде MFC, связанную с кодом класса CFile. Это было в VC 2.0. Ну и что ? Это просто библиотека, что ж в ней ошибок не может быть ? А так же - на счет работы программы на С++ в режиме 24/7. Бред полный, дофига я думаю проектов 24/7 , написанных на С++. По крайней мере никакое свойство С++ не снижает способность программы работать 24/7. А одно так прямо -таки повышает - это exceptions. VC 5 и 2 могут называться современными? Я не думаю. Можно тогда и Symantec 1.0 вспомнить. Так что, на счет компилятора не согласен. Также класс CFile из столь старой реализации, под понятие совеременной библиотеки не подходит. Зачем ворочить древнее, когда им уже разработчики не пользуются. В чем заключается повышение надежности exception, по отношению к return -1 (просто, вопрос)? На счет "в библиотеке ошибок не может быть?". Не должно быть во всяком случае. Если они есть это не гуд, и такой библиотекой надо пользоваться с опаской, а лучше вообще ее исключить из набора используемых средств. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:55 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhНу, да, вообще-то... Тогда ошибочное использование оператора.какого оператора? Это же скобочки :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:56 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZivДа, в реализациях STL есть ошибки Пример мона? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:57 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZivвывод: писал либо ужасный гуру, либо человек, который не знал о чем написатьГрафоман однозначно. Гуру последовательно развивается, меняет платформы, языки, размер управляемого софта. Смена языка для него естественный процесс: накатать на ассемблере мини-ОС можно (например OS IBM/360), но написать работоспособные Винды даже на C уже не получится. Как не получится в сарае собрать болид формулы-1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:58 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhНу, да, вообще-то... Тогда ошибочное использование оператора.какого оператора? Это же скобочки :) += и + = совсем разные вещи. += в определенном контексте использовать можно, а + = нельзя. То же самое и с этим. Так что не надо ля-ля. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhТакже класс CFile из столь старой реализации, под понятие совеременной библиотеки не подходит. Зачем ворочить древнее, когда им уже разработчики не пользуются.это цэ файлом-то не пользуются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 12:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
pandrew MasterZivвывод: писал либо ужасный гуру, либо человек, который не знал о чем написатьГрафоман однозначно. Гуру последовательно развивается, меняет платформы, языки, размер управляемого софта. Смена языка для него естественный процесс: накатать на ассемблере мини-ОС можно (например OS IBM/360), но написать работоспособные Винды даже на C уже не получится. Как не получится в сарае собрать болид формулы-1. Мне, например, фообще пох, Алаксандрески это написал или двоечник по информатики 10-го класса школы. А так же пох, к каким выводам он пришел. Меня интесует вопрос, который он тронул - надежность работы корректно написаной программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:01 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhНа счет "в библиотеке ошибок не может быть?". Не должно быть во всяком случае. Если они есть это не гуд, и такой библиотекой надо пользоваться с опаской, а лучше вообще ее исключить из набора используемых средств. В каждой программе есть хотя бы одна ошибка - народная мудрость. У каждого свои тараканы - английская пословица. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:02 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhТакже класс CFile из столь старой реализации, под понятие совеременной библиотеки не подходит. Зачем ворочить древнее, когда им уже разработчики не пользуются.это цэ файлом-то не пользуются? Я думаю CFile из 2.0 отличается от 6.0 .. 8.0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:02 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
pandrewВ каждой программе есть хотя бы одна ошибка - народная мудрость. У каждого свои тараканы - английская пословица. Если программа работает без ошибок, то там их по крайней мере две - одна перекрывает результат первой. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:04 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhТак что не надо ля-ля. :)не ну там же видно, что это темплейтный класс, значит за ним пойдут скобочки. А + = никогда нельзя использовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:05 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh A> Если программа работает без ошибок, то там их по крайней A> мере две - одна перекрывает результат первой. :)обычно говорит в таких случаях, что колчество ошибок четное Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:07 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhТак что не надо ля-ля. :)не ну там же видно, что это темплейтный класс, значит за ним пойдут скобочки. А + = никогда нельзя использовать Не скобочки, а оператор >>. Может программист хотел конструкцию A<A< сдвинуть в право на B>>? Пути господни неисповедимы. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:14 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh В чем заключается повышение надежности exception, по отношению к return -1 (просто, вопрос)? Надежность это вторично, первично то, что писать и отлаживать удобнее. Например: 1. Если нужно выпрыгнуть через вызовы на несколько уровней выше(раскрутить стек). 2. Когда функция должна возвращаеть адрес, а вернуть его не может. В класс исключении можно добавить много полезной информации для решения проблемы с возникшей ошибкой как на уровне кода так и на уровне отладки софта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:35 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
onstat- Akh В чем заключается повышение надежности exception, по отношению к return -1 (просто, вопрос)? Надежность это вторично, первично то, что писать и отлаживать удобнее. Например: 1. Если нужно выпрыгнуть через вызовы на несколько уровней выше(раскрутить стек). 2. Когда функция должна возвращаеть адрес, а вернуть его не может. В класс исключении можно добавить много полезной информации для решения проблемы с возникшей ошибкой как на уровне кода так и на уровне отладки софта. Да, в различных случаях exception удобней. Это видно и не вооруженным взглядом. Но ту же надежность можно реализовать и без exception, другой вопрос на сколько это будет не удобней и сложней. Т.е. можно сказать, что бывает легче реализовать надежность через exception. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhНе скобочки, а оператор >>. Может программист хотел конструкцию A<A< сдвинуть в право на B>>? Пути господни неисповедимы. :)как он мог этого хотеть? Это бессмыслица. Сам же говоришь, нельзя классы сравнивать и тем более сдвигать. Или можно? Как там у нас со статическими операторами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 13:53 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhНе скобочки, а оператор >>. Может программист хотел конструкцию A<A< сдвинуть в право на B>>? Пути господни неисповедимы. :)как он мог этого хотеть? Это бессмыслица. Сам же говоришь, нельзя классы сравнивать и тем более сдвигать. Или можно? Как там у нас со статическими операторами? Читать стандарт до просветления. Сканеру глубоко фиолетово классы там или объекты. Он ищет лексемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:00 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
а угловые скобочки уже не лексема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:09 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
а конечно понимаю, что компилятор можно понять, но понять не значит простить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:12 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhНе скобочки, а оператор >>. Может программист хотел конструкцию A<A< сдвинуть в право на B>>? Пути господни неисповедимы. :)как он мог этого хотеть? Это бессмыслица. Это возможная ошибка. Бессмысленная или нет - а судьи кто? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:16 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
где там возможная ошибка? Создаётся просто-напросто объект темлейтного класса. Что не нравится-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoа конечно понимаю, что компилятор можно понять, но понять не значит простить. Он же в интересах программиста так действует. Ограничивает его от ошибок. Тем более, не знаю как другие компиляторы, но g++, вообще, говорит программисту не только об возможной ошибке, но и о том, что он [компилятор], понимает идею программиста, и с большой долей вероятности считает, что программист хочет поступить именно так. Поэтому он рассказывает о решении, которое надо предпринять, чтобы убрать этот оператор. Может и можно было обойтись варнингом, но здесь наезд на оператор, что, компилятор считает более серьезным недосмотром. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:21 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoгде там возможная ошибка? Создаётся просто-напросто объект темлейтного класса. Что не нравится-то? Кто сказал, что он создается? Так программист думает. А компилятор видит здесь еще одно трактование - неверное логическо-арифметическое выражение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akhно здесь наезд на операторгде там оператор-то? Что он, уже не может оператор от скобочки отличить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:25 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhА компилятор видит здесь еще одно трактование - неверное логическо-арифметическое выражение.о как! A<B> a; A<A<B>> a; - почему одно из них верно, а другое нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:29 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
могу скобочки расставить в каждом случае (A<B)> a; (A<A)<(B>> a); и чем одно лучше другого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:32 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Akhно здесь наезд на операторгде там оператор-то? Что он, уже не может оператор от скобочки отличить? maXmo, ты упорно не понимаешь, что я тебе говорю. Посмотри на проблему со стороны "компилятор действует в интересах программиста" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:48 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoа конечно понимаю, что компилятор можно понять, но понять не значит простить. Еще раз по буквам: Это оговоренное СТАНДАРТОМ поведение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:56 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhА компилятор видит здесь еще одно трактование - неверное логическо-арифметическое выражение.о как! A<B> a; A<A<B>> a; - почему одно из них верно, а другое нет? В первом случае не возможно конкретизировать требуемое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:57 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) maXmoа конечно понимаю, что компилятор можно понять, но понять не значит простить. Еще раз по буквам: Это оговоренное СТАНДАРТОМ поведение И это логически подтверждается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 14:58 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
А какого года это вообще статья? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 18:23 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
УтёсА какого года это вообще статья? )) ХЗ. Публикация от 08.11.2006 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 18:28 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Нашел я этото чудика. Некто Андрей Калинин . Вот сцыла на один из первоисточников ИМХО http://www.codenet.ru/progr/cpp/ccpp.php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 00:21 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maytonНашел я этото чудика. Некто Андрей Калинин . Вот сцыла на один из первоисточников ИМХО http://www.codenet.ru/progr/cpp/ccpp.php сам первоисточник Июль 2001-го года. Не знаю, тогда, может и была статья актуальной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 09:46 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Калинин в своем резюме: http://www.kalinin.ru/about/ Язык C++ знаю относительно хорошо (относительно многих; это, надеюсь, заметно по исходным текстам, которые высылаются по требованию). Работаю с компиляторами: g++ (ранее с egcs, но сейчас они объединились), Borland C++, MS VC++ (хотя этот совсем не нравится), Digital CXX. Читал стандарт языка C++ ;) Знаю и использую STL. C в чистом виде знаю несколько хуже (реже использовал). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 09:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh VC 5 и 2 могут называться современными? Я не думаю. Можно тогда и Symantec 1.0 вспомнить. Так что, на счет компилятора не согласен. ... На счет "в библиотеке ошибок не может быть?". Не должно быть во всяком случае. Если они есть это не гуд, и такой библиотекой надо пользоваться с опаской, а лучше вообще ее исключить из набора используемых средств. Ошибки были и будут везде и всегда. Язык меняется, библиотеки тоже меняются (добавляются новые фичи) и так далее. Вот например в VC 2005 переписаны и CRTL, и STL, и компилятор. И кстати IDE (по отношению к VC6). Будут в ней ошибки ? Конечно будут ! Это неизбежно, но это не значит, что не надо использовать С++. Есть другие компиляторы, есть предыдущие более стабильные может быть версии и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 11:50 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh MasterZivДа, в реализациях STL есть ошибки Пример мона? Да поищи сам в Microsoft Knowledge base. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 11:51 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZiv Akh VC 5 и 2 могут называться современными? Я не думаю. Можно тогда и Symantec 1.0 вспомнить. Так что, на счет компилятора не согласен. ... На счет "в библиотеке ошибок не может быть?". Не должно быть во всяком случае. Если они есть это не гуд, и такой библиотекой надо пользоваться с опаской, а лучше вообще ее исключить из набора используемых средств. Ошибки были и будут везде и всегда. Язык меняется, библиотеки тоже меняются (добавляются новые фичи) и так далее. Вот например в VC 2005 переписаны и CRTL, и STL, и компилятор. И кстати IDE (по отношению к VC6). Будут в ней ошибки ? Конечно будут ! Это неизбежно, но это не значит, что не надо использовать С++. Есть другие компиляторы, есть предыдущие более стабильные может быть версии и т.п. Не стоит путать не переносимость версий и ошибки в версиях. Пока конкретных ошибок преведено не было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
MasterZiv Akh MasterZivДа, в реализациях STL есть ошибки Пример мона? Да поищи сам в Microsoft Knowledge base. Как нибудь покапаюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 12:25 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Почитал. Другие публикации автора. Разобрался. И пришел к выводу, Андрей - человек вполне адекватный. По сабжу - прошу у него прощения за своё грубое высказывание в его адрес (если он это прочтет). Однако своих вопросов по С/C++ с повестки дня не снимаю. C уважением Lord Mayton ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 15:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maytonОднако своих вопросов по С/C++ с повестки дня не снимаю. Какие? Про странности и контроль? Так мне кажется, что это из-за недопонимания логики С++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 16:01 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Это случайно не вы? C уважением Lord Mayton ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 16:04 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maytonЭто случайно не вы? К кому обращение? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2006, 16:14 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh maytonЭто случайно не вы? К кому обращение? ;) Мне в какой-то момент показалось, что Андрей Калинин - это вы. По крайней мере буквы инициалов совпадают в вашим ником Akh. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 13:27 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AklinсиПП ф оре ва аффтопитезь +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 16:55 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
mayton Akh maytonЭто случайно не вы? К кому обращение? ;) Мне в какой-то момент показалось, что Андрей Калинин - это вы. По крайней мере буквы инициалов совпадают в вашим ником Akh. Нэт. Андрей, да не тот. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 09:49 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
ещё одна чётко задокументированная багофича. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:10 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoещё одна чётко задокументированная багофича. А где задокументирована эта "бага"? По мне так, это просто ограничения, связанные с более простым синтаксисом препроцесора, по сравнению с с++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:27 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Таких "багов" мульон можно найти. Взять те-же триграфы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:23 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
А в свиче нельзя создавать глобальные переменные, когда кейсы, есть потом. Как к этому относиться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:34 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
вообще-то глобальные переменные объявляются вне исполняемого кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:44 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoвообще-то глобальные переменные объявляются вне исполняемого кода Имел ввиду глобальную на свич: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:48 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 12:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
g++ говорит так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. g++ c.cpp: In function `int main()': c.cpp:14: error: jump to case label c.cpp:12: error: crosses initialization of `int b' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:04 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
С присваеванием нормально, с инициализацией нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:10 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:18 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
переменная-то создаётся? :) Создаётся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:18 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoпеременная-то создаётся? :) Создаётся. а Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:20 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
хмм... а такой код даёт только варнинг Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:21 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akhэто ж инициализация по умолчанию?и каким значением инициализируется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:23 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoхмм... а такой код даёт только варнинг Код: plaintext 1. 2. g++ еррор дает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:24 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:25 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Akhэто ж инициализация по умолчанию?и каким значением инициализируется? Не знаю. Для классов когда то встречал, что-то подобное. Когда в map.insert класс пихал без конструктора без параметров, то он мне, вроде так и писал, что мол, не могу найти дефолтную инициалзацию для класса (зачем то ему был нужен, для поиска что ли?). Я так понял это конструктор без параметров. Но в обычных случаях компилятор пишет, что конструктра такого нет. Может дефолтная инициализация только для классов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:29 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Код: plaintext 1. Значит дефолтная инициализация только для классов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoхмм... а такой код даёт только варнинг Код: plaintext 1. 2. Да кстати, чем компилил? Разные реакции на один и тот же момент. Это уже глюк, наверное. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:32 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Не должно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 13:48 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
I) Автор смешал в одну кучу 1. Языки 2. Компиляторы 3. Библиотеки и пытается обосновать "слабость" С++ наличием ошибок в библиотеках (в частности) II) Сама постановка вопроса "C vs C++" - абсурдна. У каждого из этих языков своя область применения, хотя, конечно, есть и некое подмножество задач, допускающее использование как С так и С++. Причем одно из преимуществ как С так и С++ - родственный синтаксис, упрощающий разработчику переход с одного языка на другой. Гавриленко Сергей АлексеевичУгу. Давайте все дружно на ассемблер пересядем. Там копмилятор проще не бывает, и, следовательно, ошибок в нем меньше. Вот именно. Только можно идею "расширить и углубить" - откажемся от компилятора вообще и будем HEX-редактором коды набивать... Akh Кто-нибудь сталкивался с ошибками в современных популярных библиотеках? Сталкивался, но сути дела это не меняет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 14:22 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) maXmo Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Не должно Так g++ тоже это пропускает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 14:23 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
ПарольЗабылI) Автор смешал в одну кучу 1. Языки 2. Компиляторы 3. Библиотеки и пытается обосновать "слабость" С++ наличием ошибок в библиотеках (в частности) II) Сама постановка вопроса "C vs C++" - абсурдна. У каждого из этих языков своя область применения, хотя, конечно, есть и некое подмножество задач, допускающее использование как С так и С++. Причем одно из преимуществ как С так и С++ - родственный синтаксис, упрощающий разработчику переход с одного языка на другой. Гавриленко Сергей АлексеевичУгу. Давайте все дружно на ассемблер пересядем. Там копмилятор проще не бывает, и, следовательно, ошибок в нем меньше. Вот именно. Только можно идею "расширить и углубить" - откажемся от компилятора вообще и будем HEX-редактором коды набивать... Akh Кто-нибудь сталкивался с ошибками в современных популярных библиотеках? Сталкивался, но сути дела это не меняет. Да, понятно уже всем. Пример можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 16:00 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhЗначит дефолтная инициализация только для классов.ну да, в каждой книжке по сишнику (было) написано, что неинициализированная переменная содержит треш. AkhДа кстати, чем компилил?вс Gluk (Kazan)Не должноа чо не так? Тоже багофича? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 16:21 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) maXmo Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Не должно переменные создаются в начале, как бы это не было фигово. просто описывать их везде можно. инициализированные ( с каким-то значением) и неиниц. в разных секциях. так же как статические и динамические. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 17:29 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh Да, понятно уже всем. Пример можно? если понятно, то доказано. зачем же тогда пример для избыточного доказательства??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 17:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin Gluk (Kazan) maXmo Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Не должно переменные создаются в начале, как бы это не было фигово. просто описывать их везде можно. инициализированные ( с каким-то значением) и неиниц. в разных секциях. так же как статические и динамические. Создаются в какой момент и где, это не имеет значения. Важно то, что когда программа доходит до их определения (локальные), то она прозводит их инициализацию (вызов конструктора(классы) или присваивание(скаляры, или как их там)), если это требуется. Вопрос в том, можно ли в секции скипать инициализацию, если не неоходима для данного типа. Если компилятор считает, что нельзя, то почему он в вижуал си разрешает это с goto? Если можно, то почему он в свичах запрещает? И почему нельзя? Если переменная может использоваться без инициализации, то почему в этом случае он запрещает? Двойной инициализации произойти не может, т.к. определятся переменная может только один раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 17:54 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhСоздаются в какой момент и где, это не имеет значения. Важно то, что когда программа доходит до их определения (локальные), то она прозводит их инициализацию (вызов конструктора(классы) или присваивание(скаляры, или как их там)), если это требуется. да AkhВопрос в том, можно ли в секции скипать инициализацию, если не неоходима для данного типа. Если компилятор считает, что нельзя, то почему он в вижуал си разрешает это с goto? Если можно, то почему он в свичах запрещает? скипать иницаилизация в смысле? изпользовать после goto l то что написано между goto и l ??? переменная создается. и сидит в памяти. микрософт дает скорее варинг - не присвоено значение свичь - отдельная песня (см ниже) Akh И почему нельзя? Если переменная может использоваться без инициализации, то почему в этом случае он запрещает? переменная не может быть использована без создания, но модет без инициализации (присваивания значение по-ум.) AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. существует такая гадкая весчь - пространство имен : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 18:03 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin... Скажи честно, ты последние 2 листа топика читал (особенно пердпоследний в конце, про инициализацию)? Просто не охота по новой собирать то, что уже написано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 18:19 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin Akh Да, понятно уже всем. Пример можно? если понятно, то доказано. зачем же тогда пример для избыточного доказательства??? Честно, блин, почитай топик (это в первом листе, вроде) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 18:20 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 14:46 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin существует такая гадкая весчь - пространство имен : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Наврное Вы имели ввиду область видимости(scope), а не пространство имен(name space). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:06 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. Имел ввиду 2 различных способа инициализации переменной в секции. Вообщем, сходу, найти здесь логику не получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:12 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoсмотрим асмовый код, сколько там у нас инициализаций? Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
к пред. сообщению: данный if и следовательно прыжок уводит от a=1, получаем случайное значение a аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:32 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhЧестно, блин, почитай топик (это в первом листе, вроде) честно. читал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:33 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. замечу: переменная сидит в стеке, а в создании под нее отводится место. двойного отведения места нету. a=1 выполнитться столько-то раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:35 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
паскриптум к пред. 4 сообщениям : gсс аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:36 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklin maXmo AkhДвойной инициализации произойти не может, т.к. определятся переменная может только один раз. Код: plaintext 1. 2. 3. замечу: переменная сидит в стеке, а в создании под нее отводится место. двойного отведения места нету. a=1 выполнитться столько-то раз. В этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:45 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
AkhВ этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 15:59 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
акуз ЦИК AkhВ этом контексте иницилизация - логическое создание переменной (классы - конструктор). Т.к. компилятор еррорит int b=1, а int b; b=1 пропускает, то по, всей видимости, причина такого поведения, именно в инициализации не по умолчанию. Для скаляров, инициализация по умолчанию - ничего не делает, для классов, это, видимо, конструктор без параметров. Можно, кстати, посмотреть, как поведет себя компилятор, если в использованных примерах с применением свича вместо int-а поставить какой-нибудь класс. Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. Выделение памяти в стеке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 09:43 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Akh акуз ЦИК Код: plaintext 1. 2. 3. 4. 5. 6. 7. по ходу ошибка была в отсутствии этого nop а, т.е. метка указывала на создание переменной, что делать нельзя. Выделение памяти в стеке? что-нибудь вроде того, но! на этапе подготовки кода. а по заврешенпю онной строка удалилась, и как вывод, метка указала в пустоту. другими словами, хоть в стеке место считается по коичеству int ов в коде, но указывать напрямую на инт низзя ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 16:18 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklina=1 выполнитться столько-то раз.повезло, что тут инт, а если бы был класс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 11:28 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Aklina=1 выполнитться столько-то раз.повезло, что тут инт, а если бы был класс? гм. скорее выполниться несколько раз перегруженный оператор "=" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 13:15 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoMyObj myobj(param1); Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. результат: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 13:38 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
ЙОПТ.. два деструктора! Рву на себе волосы! Топчу фсю литературу по программированию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 14:17 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
как его бишь зовут? Роллап стека? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2006, 14:38 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoкак его бишь зовут? Роллап стека? кого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2006, 17:31 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoкак его бишь зовут? Роллап стека? Каллапсис? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 10:16 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Так, вы что? Глюк нашли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 10:16 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Aklinкого?стека. Гоуту часто фачит стек, что мы и наблюли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 11:40 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
Так все нормально ну немного не оптимизирован код а так ведm 2 раза должен создаваться ааа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 12:27 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmo Aklinкого?стека. Гоуту часто фачит стек, что мы и наблюли. гм. а можно то же но по русски??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 13:11 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
о, вспомнил, называется stack unwinding. Если оператор goto пересекает границы областей видимости, он должен вычищать стек от временных переменных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2006, 14:46 |
|
||
|
C или C++
|
|||
|---|---|---|---|
|
#18+
maXmoо, вспомнил, называется stack unwinding. Если оператор goto пересекает границы областей видимости, он должен вычищать стек от временных переменных. видимо сам гоуту сидит в ифе, а при вылезании из него, очищает класс... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2006, 15:54 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2029904]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
194ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
188ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 678ms |

| 0 / 0 |
