Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercury Или всё-таки у С++ строгая типизация У С++ и С строгая типизация. Строгая, статическая. То, что во время исполнения можешь по-разному трактовать участки памяти, это никак не влияет на вид типизации языка, это можно сказать такая суперфича языка -- иметь возможность интерпретировать как угодно просто любые байты памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2016, 17:36 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Почему об этом ничего не сказано ни в стандарте ни в книгах BS? Вообще, нигде ничего не сказано однозначно о том, какая типизация у языка С++. Статическая? Это понятно. Но строгая или слабая мне не понятно. Я не нашел даже точного определения данных понятий. Но интуитивно я понимаю это как отсутствие возможностей неявного преобразования между типами явного небезопасного приведения типов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 02:07 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
как отсутствие возможностей неявного преобразования между типами И явного небезопасного приведения типов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 02:07 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercury, язык с сильной типизацией - стрелять не годится. А Ариан-5 без сильной типизации распадется на куски. Впрочем, он и с сильной типизацией на куски таки распался. нет у этих терминов хрустальных значений. Они каучуковые - принимают форму контекста, в котором их пытаются использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 03:25 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
boobySashaMercury, язык с сильной типизацией - стрелять не годится. А Ариан-5 без сильной типизации распадется на куски. Впрочем, он и с сильной типизацией на куски таки распался. нет у этих терминов хрустальных значений. Они каучуковые - принимают форму контекста, в котором их пытаются использовать. Если это правда, то разговоры о строгой и слабой типизации языка есть разговоры о пустом месте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 04:59 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryПочему об этом ничего не сказано ни в стандарте ни в книгах BS? Вообще, нигде ничего не сказано однозначно о том, какая типизация у языка С++. Статическая? Это понятно. Но строгая или слабая мне не понятно. Я не нашел даже точного определения данных понятий. Но интуитивно я понимаю это как отсутствие возможностей неявного преобразования между типами явного небезопасного приведения типов Саш. Да на что нам эти словесные крючкотворства. Давай подумаем. Как часто нам в коде нужно было делать кастинг (int64) -> (int) или (double) -> (int). Я не думаю что очень часто но и без этого жить нельзя. Даункастинг нужно? Нужно. И хоть обложи язык законами и поправками но программисту-то нужно делать свою работу. Главное что я, как создатель своего ПО утверждаю, что я могу преобразовать (int64) -> (int) и в данном алгоритме и я полагаю что все будет нормально. И наличие строгости или не-строгости языка не влияет на мое решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 10:48 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryboobySashaMercury, язык с сильной типизацией - стрелять не годится. А Ариан-5 без сильной типизации распадется на куски. Впрочем, он и с сильной типизацией на куски таки распался. нет у этих терминов хрустальных значений. Они каучуковые - принимают форму контекста, в котором их пытаются использовать. Если это правда, то разговоры о строгой и слабой типизации языка есть разговоры о пустом месте можно иногда википедию глянуть. Там как откровенный мусорные статьи бывают (когда химики и географы про базы данных рассуждают), так и вполне годный. При типизацию в русской версии +- годный текст. Для начала - уж точно https://ru.wikipedia.org/wiki/Сильная_и_слабая_типизация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 11:01 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
maytonSashaMercuryПочему об этом ничего не сказано ни в стандарте ни в книгах BS? Вообще, нигде ничего не сказано однозначно о том, какая типизация у языка С++. Статическая? Это понятно. Но строгая или слабая мне не понятно. Я не нашел даже точного определения данных понятий. Но интуитивно я понимаю это как отсутствие возможностей неявного преобразования между типами явного небезопасного приведения типов Саш. Да на что нам эти словесные крючкотворства. Давай подумаем. Как часто нам в коде нужно было делать кастинг (int64) -> (int) или (double) -> (int). Я не думаю что очень часто но и без этого жить нельзя. Даункастинг нужно? Нужно. И хоть обложи язык законами и поправками но программисту-то нужно делать свою работу. Главное что я, как создатель своего ПО утверждаю, что я могу преобразовать (int64) -> (int) и в данном алгоритме и я полагаю что все будет нормально. И наличие строгости или не-строгости языка не влияет на мое решение. Марк, дело в том, что в случае, если мы наверняка знаем что язык обладает строгой типизацией, то это автоматически даёт нам гарантию отсутствия определенных нежелательных видов поведения и как следствие значительно упрощает разработку. А первоначально я подумал, что Илья обозначил различие между Си и С++ в виде строгой типизации, но видимо я не так его понял. booby, простите, но информация на той странице мне не понравилось, отсутствуют источники. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 12:36 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryМарк, дело в том, что в случае, если мы наверняка знаем что язык обладает строгой типизацией, то это автоматически даёт нам гарантию отсутствия определенных нежелательных видов поведения и как следствие значительно упрощает разработку. А первоначально я подумал, что Илья обозначил различие между Си и С++ в виде строгой типизации, но видимо я не так его понял. Для тех кто которые кодили на Ассемблере вообще таких вопросов не возникает. Для асма типично что тип данных - это просто призма сквозь которую мы смотрим на сырую memory. К примеру QWORD можно рассматривать как пару DWORD и также применять к нему либо арифм операцию класса QWORD либо векторную операцию над двумя WORDS. Или знаковые-беззнаковые типы как таковые даже не существуют. Это просто семантика операций над регистрами. И сам по себе cast приобретает другой смысл. Разыменовать кусок памяти для другого типа или слегка преобразовать raw-data и еще раз разыменовать. Вобщем я хочу сказать - не парься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 12:49 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Фундамент любого языка - система типов. Если я не буду понимать фундамент, то никогда не пойму С++. Возможно смогу применять к решению каких-то задач, но это не самое главное. Мне хочется понимать этот язык ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:00 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryФундамент любого языка - система типов. В С++ типы важны только для реализации полиморфизма. В остальных случаях это просто контроль криворукости программиста. Скорее штукатурка, а не фундамент ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:06 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskySashaMercuryФундамент любого языка - система типов. В С++ типы важны только для реализации полиморфизма. В остальных случаях это просто контроль криворукости программиста. Скорее штукатурка, а не фундамент Основная причина появления данного языка как нового языка, это появление пользовательских типов данных - классов. Серьезные изменения в системе типов языка привели к появлению нового языка. Разве это не так? Что-же по вашему является фундаментом С++ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 13:14 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryОсновная причина появления данного языка как нового языка, это появление пользовательских типов данных - классов. Нет, это не причина, а следствие. SashaMercuryЧто-же по вашему является фундаментом С++ ? * работа на низком уровне (указатели и тп) * поддержка ООП в синтаксисе * автоматизация рутинных действий программиста (RAII, шаблоны, лямбды, исключения) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 14:05 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskySashaMercuryОсновная причина появления данного языка как нового языка, это появление пользовательских типов данных - классов. Нет, это не причина, а следствие. SashaMercuryЧто-же по вашему является фундаментом С++ ? * работа на низком уровне (указатели и тп) * поддержка ООП в синтаксисе * автоматизация рутинных действий программиста (RAII, шаблоны, лямбды, исключения) мое скромное мнение здесь так стоит: Это уже не фундамент, а а-ля "операционный скелет" языка. Фундамент будет тем же самым, что и у Fortran, COBOL и Basic - императивная модель вычисления, настаивающая на том, что состояние - существенная часть самого вычисления, и поставленная поверх операции присваивания, l-value и r-value. Из этого фундамента типизация вытягивается клещами в любом полюбившемся направлении. как-то так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 15:00 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryФундамент любого языка - система типов. Если я не буду понимать фундамент, то никогда не пойму С++. Возможно смогу применять к решению каких-то задач, но это не самое главное. Мне хочется понимать этот язык Фундамент любого здания это то, что скрыто от внешнего наблюдателя\потребителя В данном случае - это свободный и примитивный язык машинных команд. Хочешь просмотреть "фундамент" С++ - изучай ассемблер типизация - это дверь, которая позволяет входить и выходить не ломая стены приведение типов - это окна, которые позволяют свету проникать внутрь предметы обихода - это ООП крыша - это шаблоны поймёшь ассемблер - увидишь всё как Нео в Матрице тебе какую таблетку ??? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 16:29 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskySashaMercuryОсновная причина появления данного языка как нового языка, это появление пользовательских типов данных - классов. Нет, это не причина, а следствие. Не очень понял. Рассуждаю так, язык Си развивался, Сообщество программистов требовало перемен(а BS хотел PhD), но эти перемены был настолько серьезны, что было принято решение о создании С++. Язык, в котором на уровне синтаксиса реализована работа с классами, работа с которыми и определило его дальнейшее развитие Anatoly MoskovskySashaMercuryЧто-же по вашему является фундаментом С++ ? * работа на низком уровне (указатели и тп) * поддержка ООП в синтаксисе * автоматизация рутинных действий программиста (RAII, шаблоны, лямбды, исключения) Анатолий, но где были бы указатели, если бы система типов языка не подразумевала составные типы, частным случаем которых являются указатели. Ладно, вы безусловно знаете в разы больше, и я не в коем случае не претендую. Но всё-же мне кажется, эти вопросы очень важны. Меня гонят уже спать( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 17:04 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryАнатолий, но где были бы указатели, если бы система типов языка не подразумевала составные типы, частным случаем которых являются указатели. Я не говорю что типы не важны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 17:14 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
SashaMercuryПочему об этом ничего не сказано ни в стандарте ни в книгах BS? Вообще, нигде ничего не сказано однозначно о том, какая типизация у языка С++. Статическая? Это понятно. Но строгая или слабая мне не понятно. Потому что эти понятия не очень строго определены. В С статическая строгая. В С++ то же самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 19:57 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
boobySashaMercuryпропущено... Если это правда, то разговоры о строгой и слабой типизации языка есть разговоры о пустом месте можно иногда википедию глянуть. Там как откровенный мусорные статьи бывают (когда химики и географы про базы данных рассуждают), так и вполне годный. При типизацию в русской версии +- годный текст. Для начала - уж точно https://ru.wikipedia.org/wiki/Сильная_и_слабая_типизация Фуфло там написано. Читай хотя бы английский вариант этой же статьи. Ни разу в жизни не использовал reinterpret_cast, т.к. сишное приведение типа короче при том же результате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 21:01 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Siemarglboobyпропущено... можно иногда википедию глянуть. Там как откровенный мусорные статьи бывают (когда химики и географы про базы данных рассуждают), так и вполне годный. При типизацию в русской версии +- годный текст. Для начала - уж точно https://ru.wikipedia.org/wiki/Сильная_и_слабая_типизация Фуфло там написано. Читай хотя бы английский вариант этой же статьи. Ни разу в жизни не использовал reinterpret_cast, т.к. сишное приведение типа короче при том же результате. Там написаны вполне правильные вещи, кроме того, что в С/С++ слабая типизация. (Начиная со слов "Например, яркими примерами слабой системы ..." и далее). P.S. "сишное приведение типа короче при том же результате" -- нет, результат далеко не тот же. Хотя бы reinterpret_cast можно легко искать в тексте программы поиском. Только за это его уже нужно использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 21:09 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Я поясню, почему там написана хрень в отношении С/С++. Во-первых, потому что их объединяют, а это в принципе неправильно. С++ гораздо более строк с типами. Во-вторых, потому что рассуждают о reinterpret_cast и им подобных вещах с точки зрения типов данных языка программирования, хотя очевидно, что по сути это -- средства языка, позволяющие оперировать непосредственно байтами памяти, и не имеющие к типам данных почти никакого отношения. По сути эти средства -- это такой особый встроенный ассемблер, которым если нужно можно напрямую обрабатывать память любым образом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 21:14 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Siemargl, По степени внятности английская версия а) не превосходит русскоязычную (это я тебе как бывший писатель на Visual Basic рассказываю) б) не противоречит русскоязычной текстуально в) уступает русскоязычной версии в следующих отношениях: -- англоязычная версия просто упоминает о том, что лучше было бы не использовать эти плохо определенные понятия, заменяя их по месту сходными с устоявшимся смыслом, а русскоязычная, в отличие от, дает представления о времени и контексте, в которых такие и сякие авторы пытались придать этим словам смысл технических терминов. Что дает объемное представление о степени успешности этих попыток. -- По вышеуказанной причине (давая намек на историю) русская версия дает, имхо, лучшее представление о причинах повторения таких попыток, источниках, заставляющих авторов высказываться в терминах силы и слабости. Английская версия, не давая даже намека на генезис, может приводить к ошибочному предположению об обычном слабоумии этих самых авторов (т.е., по ходу, ru еще и с большим уважением к существу вопрос описывает, чем en). SiemarglНи разу в жизни не использовал reinterpret_cast, т.к. сишное приведение типа короче при том же результате. Ну, прекрасно это, - здорово. Я reinterpret_cast тоже в жизни ни разу не использовал. Правда, по другой причине - я ни разу в жизни ни C, ни C++ не использовал Факт не использования может быть как-то связан с выявлением силы или слабости типизации в этих языках? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 22:40 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
boobyПравда, по другой причине - я ни разу в жизни ни C, ни C++ не использовал Анафема! Гнать тебя отсюда! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 22:45 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
mayton, и вам не хворать, а вообще - приятно, что не перевелись еще на свете лыцари, готовые кого-то куда-то гнать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2016, 22:59 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39293558&tid=2018431]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 182ms |

| 0 / 0 |
