|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|
Быстрый старт в изучении C++ для относительно опытных программистов Basic18.04.2020, 16:11. Показов 14962. Ответов 253
Метки basic, c++, c++ для начинающих, com для начинающих, power basic, powerbasic, vb, vb winapi com, vb_winapi_com, visual basic, winapi_com_с++, winapi_com_c++, winapi_для_начинающих, winapi_и_com, азбука com, азбука winapi, заметки недопрограммиста, различие c++ и vb, сходство c++ и vb (Все метки)
В этой ветке предлагаю обсуждать сходства и различия между C++ и Visual Basic.
Ну хотя бы для упрощения процесса изучения параллельного (дополнительного) языка для тех, кто уже относительно неплохо знаком с Visual Basic. Ну просто как-то "не вкусно" начинать изучение совсем уж с нуля, когда, в принципе, уже и без того много знаешь (циклы, ветвления, указатели, видимость переменных ... ). На самом деле, начал сейчас просмортр на ютубе курса по C++. Дядька очень толково и понятно всё объясняет, явно есть у него талант хорошего преподавателя. Самые первые отличия, которые бросились в глаза, это: - комменты обозначают двумя косыми чертами вместо апострофа, - в конце каждой строки точка с запятой, - все процедуры, функции, "тела" циклов ... в фигурных скобках, - вложенные циклы можно описывать одной строкой, - если переменная объявлена, но ей не присвоено значение, то она содержит случайный "мусор" из памяти, а не как у нас в бейсике, где сразу получает значение ноль или пустую строку, - массивы с квадратными скобками вместо круглых, - область видимости переменных ограничена фигурными скобками и причём неважно функция это, цикл или "тело" функции IF, а не как у нас область видимости переменных ограничена только функциями и процедурами. Ветка открытая, пишите кто хочет. Особенно приветствуются советы опытных специалистов, уже овладевших несколькими языками. Ну уж им-то гораздо виднее, в чём сходство и различие разных языков. Сказать по правде, лично мне сейчас C++ и его младший брат нужны, главным образом, для удобства изучения материалов MSDN.
0
|
|
| 18.04.2020, 16:11 | |
|
Ответы с готовыми решениями:
253
предложение для опытных программистов Быстрый старт и софт для Modicon TM251MESE (Schneider Electric) Книги или справочники для опытных(или проффесиональных) программистов! |
|
Модератор
|
|||
| 27.04.2020, 12:42 | |||
|
0
|
|||
|
Модератор
|
|||||||
| 27.04.2020, 13:40 | |||||||
|
Пример который привел ты решается просто:
0
|
|||||||
|
|
||||||||
| 27.04.2020, 14:19 | ||||||||
|
Я конечно удивился, учитывая что судя по коду ссылки это указатели на объекты, но подумал может есть какая-то лазейка позволяющая использовать их как обычные указатели.
0
|
||||||||
|
Модератор
|
|||||||
| 27.04.2020, 15:02 | |||||||
|
Реальная задача к примеру, динамическая загрузка сущностей и работа с ними. В C это решается к примеру через загрузку динамических библиотек с фиксированным импортом и вызов функций по указателю. В VB6 это решается аналогично только используя ссылки на объекты из библиотек и вызов методов фиксированных интерфейсов. Вместо указателя на любой тип данных нужно иметь указатель на объект олицетворяющий это тип данных. Это безопаснее, это гибче. Если у тебя возникает в программе задача использовать указатель, просто подумай об этом через концепцию безопасного программирования VB6 и ты сможешь эту задачу решить через ссылки.
0
|
|||||||
|
|
|||||||||||||||||||||||
| 27.04.2020, 16:05 | |||||||||||||||||||||||
|
Вот допустим как я эту задачу решу на PB.
Если посмотреть проекты в вашем блоге, можно найти множество где производится работа с памятью. Как же концепция безопасного программирования? ![]() ![]()
0
|
|||||||||||||||||||||||
|
Модератор
|
|||||||||||||
| 27.04.2020, 16:40 | |||||||||||||
|
Во-вторых, я не являюсь программистом с которого возможно нужно брать пример. Есть куча безопасных аналогов того как можно сделать вещи которые делаю я придерживаясь концепции безопасного программирования VB6. Я просто почти не использую дополнительные библиотеки (в проекта в своем блоге) которые специально предназначены для этого и которые многократно ускоряют разработку приложений на VB6. К примеру vbRichClient5, VBCorLib библиотеки содержат огромное количество готовых вещей и тебе при использовании их возможно ни разу не придется обратиться к WinAPI.
0
|
|||||||||||||
|
|
||||||||||
| 27.04.2020, 17:18 | ||||||||||
0
|
||||||||||
|
Модератор
|
|||||
| 27.04.2020, 17:36 | |||||
|
0
|
|||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||
| 27.04.2020, 18:37 [ТС] | |||
То же самое и с подключением словарей в SAPI_5.4. Написано много, а вот как конкретно подключить словарь к движку непонятно.
0
|
|||
|
Модератор
|
|||
| 27.04.2020, 21:08 | |||
|
Как видишь никаких предупреждений нет.
0
|
|||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||
| 27.04.2020, 21:35 [ТС] | |||
0
|
|||
|
Модератор
|
||
| 27.04.2020, 22:07 | ||
|
Такие ошибки очень трудно найти, поэтому ручное управление памятью небезопасно. Представь что к примеру по тому смещению куда я записал значение, какие-то важные данные, и падение не произошло? Может случится все что угодно, вплоть до потери всех данных в приложении или нарушение работы системы, да вообще все что угодно. Данную уязвимость могут эксплуатировать злоумышленники и украсть у тебя пароли/деньги/и т.д. А теперь попробуй вот также вот, придерживаясь концепции безопасного программирования) проделать все тоже самое в VB6.
0
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||
| 27.04.2020, 22:55 [ТС] | ||
|
0
|
||
|
Кормпилятор
|
||
| 27.04.2020, 23:49 | ||
|
и не формализовал задачу заранее(потому что мне не понятно как можно сделать всё по науке и криво вбить потом в код, это редкая халатность). По той же самой причине(по криворукости) неверный алгоритм может также не дать сбой и на обычных структурах языка, а потом выдать себя на важных данных. В указатели просто так не лезут, это всегда кастомная структура данных и всегда какие-либо требования к оптимизации кода. Поэтому вся эта "безопасность" - человеческий фактор. Не стал бы лезть в указатели например, ради того, что можно сделать на простых массивах. Потому что массивы есть везде и на них можно строить более простой и независимый от ЯП код. Но например, если нужно сделать быстрый обсчёт разношёрстных данных и хочется, чтобы оно ещё и быстро работало, тут придётся возиться с указателями. Потому что доступ к массиву, например, будет внутри себя делать умножение(если структура нестандартного размера), а посредством указателя можно пройтись точечно по нужным полям, просто прибавляя к указателю необх. значение. Или заменить умножение комбинацией битовых сдвигов или таблицы. В ряде случаев просто предпочту указатели, хоть и радости в возьне с ними крайне мало. Тут ещё был диалог про пользователя. Так вот, поймите мужики, пользователю по хорошему до фени все эти фреймворки фигеймворки, рантаймы, dll-ы и прочее барахло. Он выкачивает архив и хорошо если там один файлик с именем install.exe или аналогичное куда надо ткнуть и получить результат, а не помойка из dll и прочих разных файлов в корне, с кучей непонятных экзешников и т.п., да ещё и где-то в разных папках(или вообще не упомянутое) лежит то, что надо установить руками, что потребует времени, место на диске(которого может не быть) и бог знает чего ещё, вплоть до прав админа и доступа к интернету. Тут можно конечно сказать "не ипёт" хочет использовать, пусть соответствует. Но лично сам предпочитаю щедящий подход: Т.е. когда пользователю для работы приложения нужна лишь ОС, с корректно поставленными драйверами, начиная от 2000\XP и выше. Особенно если софт не требует каких-то специфических возможностей либо конкретных ОС, либо конкретной библиотеки. А не просто ради прихоти разработчика(мол вот тут быстрее и безгеморнее разработать).
0
|
||
| 27.04.2020, 23:49 | |
|
набор опытных C++ программистов Приглашаю На работу Опытных Программистов Нужен совет опытных программистов на C# Нужен совет опытных программистов
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
|
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов
Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
|
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация
В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
|