|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|
Быстрый старт в изучении C++ для относительно опытных программистов Basic18.04.2020, 16:11. Показов 13227. Ответов 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) Книги или справочники для опытных(или проффесиональных) программистов! |
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||||
| 20.04.2020, 17:27 [ТС] | |||||||||||||
![]() Относительно передачи параметров сейчас собираю материал, чтобы аргументированно открыть ветку на эту тему в общих бейсиках.
И кстати говоря, вы сейчас затронули очень интересный момент. Неужели и правда, в VB есть что-то, чего нет в C++, хотя первый остановился в развитии 22 года назад, а второй развивается до сих пор? Не, ну первое, что приходит мне в голову это упомянутый тип данных Variant, который имеет репутацию очень медленного. Ну а что же ещё-то? И почему не используют? Считают нецелесообразным?
![]() А там ведь, наверняка, нет возможности создать несколько потоков! А у меня же в этом вся соль замысла. Делим весь текст на несколько частей и обрабатываем каждую из них (одновременно!) в отдельном потоке. Скорость же сразу в разы выше. Хотя, я подозреваю, что с внедрением ваших инноваций, потоки и VBA Excel тоже можно будет каким-то образом использовать ![]()
А что касается Power Basic'а, то я вчера был сильно обескуражен, когда обнаружил (а до этого меня, признаться, вообще не интересовал размер моих собственных файлов), что файл, который всего лишь создаёт простое окно и больше ничего не делает, весит в Power Basic'е около 60 Кб, а файл без графики вообще с одним только Msgbox "Hello, world!" весит 17 Кб. Но с другой стороны, исходник, который я на днях здесь выкладывал, содержащий 700 строк кода (с потоками, с полосами прогресса, с обращениями к PDH счётчику загруженности процессора, с "торможением" потоков в зависимости от показаний этого счётчика и подробнейшим отчётом о работе в контрольном файле) весит после компиляции всего 119 Кб. Добавлено через 22 минуты ![]() А вот по поводу ООП в C++ это как раз из серии вопросов, ответы на которые я "всегда хотел знать, но стеснялся спросить" ![]() В VB ООП присутствует по полной программе, неужели в плюсы такие возможности не заложены?! Добавлено через 10 минут
0
|
|||||||||||||
|
|
|||||||||
| 20.04.2020, 17:28 | |||||||||
|
Если отредактировать его и после откомпилировать, получится около 500 байт. Не по теме:
0
|
|||||||||
|
Супер-модератор
|
||
| 20.04.2020, 17:35 | ||
|
1
|
||
| 20.04.2020, 17:41 | ||
|
Не по теме:
0
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||||||
| 20.04.2020, 18:06 [ТС] | ||||||||
![]() ![]() ![]() Добавлено через 21 минуту Не по теме:
0
|
||||||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||
| 20.04.2020, 18:30 [ТС] | ||||
|
Добавлено через 9 минут ![]() Месяц назад предпринял очередную попытку, дочитал до главы по DLL и SLL и сдулся
0
|
||||
| 20.04.2020, 19:23 | ||
|
Не по теме:
Много лет назад проводили сравнение разных бейсиков http://www.vbnet.ru/articles/S... spx?id=220 С того времени многое могло изменится и в текущих версиях цифры будут другие. Но том не менее, PowerBasic не на вершине списка.
0
|
||
|
Супер-модератор
|
||||
| 20.04.2020, 19:58 | ||||
|
0
|
||||
|
Модератор
|
|||||||||||
| 20.04.2020, 21:06 | |||||||||||
|
1
|
|||||||||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||||||||||||||||||||||||||||||||
| 21.04.2020, 01:12 [ТС] | |||||||||||||||||||||||||||||||||||||||||
![]() Но вам верю! ![]()
![]() Вот для вас это "библия", потому что вы, наверняка, первый раз прочитали эту книгу, когда процентов 90 изложенной в ней информации ещё было актуально, а теперь возможно заглядываете лишь изредка. Ну а мне-то каково сейчас окунаться в царство Windos 95, приправленное постоянными упоминаниями Win16? Ну "не вкусно" это читать в 21-ом году 21-го века из системы Win_10_64 ![]() А там же ведь ещё постоянные отсылки к его же книжке по Win16. Ну вот и думаешь, может быть я сейчас ничего здесь не пойму, потому что ту его книжку сначала не прочитал. И первые 4 главы тоже хрен пропустишь, потому что написано же: обязательно прочитай, а то дальше ничего не поймёшь! ![]() А вот кстати, он там постоянно рекомендует использовать свой самодельный API32.TXT вместо "штатного" Win32API.TXT. Имеет смысл? Добавлено через 52 минуты Не по теме:
Добавлено через 2 часа 8 минут ![]()
Ну если это действительно так, тогда, пожалуй и правда, имеет смысл использовать самую последнюю версию C++, хоть и много места займёт на диске десктопа.
![]()
На интерпретаторе VBA Excel несколько потоков запустить не получится без использования опять же WINAPI или каких-нибудь ещё "премудростей".
Вот те раз, а я уже привык, мне понравилось ![]()
![]() ![]() Добавлено через 11 минут
0
|
|||||||||||||||||||||||||||||||||||||||||
|
63 / 48 / 12
Регистрация: 28.12.2014
Сообщений: 270
|
|
| 21.04.2020, 08:58 | |
|
Говоря про книги, имел ввиду в основном Эплмана. Для IDE, которому 22 года, и нет аудитории, которой можно было бы адресовать книгу/ги смысла осовременивать что-то нет. В API вьюире нет всех объявлений для интерфейсов винды, на мой взгляд, нужно уметь их переводить на VB. Эплман рассчитан на подготовленного читателя, другой может не понять не разобраться, а так, опять же на мой взгляд, все там есть. Если что-то непонятно, то можно спросить на форуме. Либо изучать вдумчиво, любознательно, основательно. Знания, обычно, приобретаются тяжелым трудом, сами собой не приходят.
Условно, опять же, можно сказать, что VB мертв, но, если рассмотреть VB.net, можно и не согласиться с данным утверждением. Под VB.net, скажем, есть все что нужно и в современном виде. Можно его изучать. Но, если ставить вопрос изучения нового языка, возможно, что VB.net не самая лучшая кандидатура.
0
|
|
|
|
||||
| 21.04.2020, 11:01 | ||||
|
0
|
||||
|
Модератор
|
||||||||||||
| 21.04.2020, 11:12 | ||||||||||||
|
Добавлено через 1 минуту
0
|
||||||||||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||
| 21.04.2020, 17:30 [ТС] | |||||||||||
![]() Поэтому для меня это выглядит как книга по радиолампам в эпоху полупроводников, например. Ну там же тоже, наверняка, много чего полезного можно почерпнуть. Законы Кирхгофа, расчёт цепей, да и много ещё чего другого, наверняка. Читая Эплмана, сразу, например, понятно, что Win16 уже точно не используется, и такие отрывки книги можно смело пропускать, но вот всё остальное посвящено Windows 95. Что там устарело уже окончательно, а что нет, совершенно не понятно. Вот именно это и демотивирует. ![]() Добавлено через 27 минут
![]() А если серьёзно, то сишная рантайм-библиотека всё-таки присутствует (и всегда будет присутствовать) во всех версиях Windows и не занимает так много места как фреймворк.
![]() Просто хочется найти какой-нибудь оптимальный вариант, чтобы одновременно и места на диске не слишком много занимало, и хорошие перспективы были открытыми на тот случай, если мне всё-таки когда-нибудь захочется написать что-то и на С++ тоже.
0
|
|||||||||||
|
|
|||
| 21.04.2020, 17:41 | |||
|
0
|
|||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||
| 21.04.2020, 19:41 [ТС] | |||||
![]() Кстати, на днях смотрел несколько очередных уроков на ютубе. На этот раз про стек и про рекурсию. Ну и про переполнение стека заодно, как резульат неправильного использования рекурсии. Ну вот как раз пример того, что изучать новый язык совсем уж "с нуля" или уже имея определённый опыт в других языках, это всё-таки большая разница. Стек же он и в Африке стек Хоть в С++, хоть в VB. И про рекурсию и переполнение стека можно сказать то же самое. Так что это смело можно отнести к сходству двух этих языков. Хотя, конечно, в С++ содержимое стека, наверняка, можно "потрогать ручками", а в VB такое вряд ли возможно. Ну это можно записать в различия. Преподаватель тот про это не рассказывал пока, но я и сам уже догадался.Следующий урок про применение рекурсии функций для вычисления факториалов ![]() Смутно припоминаю, что давным-давно еще в институте на уроках программирования нам предлагали похожую задачу. Ну ни разу в жизни даже близко не понадобилось ничего подобного. Да и вообще я когда-то где-то прочитал, что надо стремиться к максимальной простоте кода, чтобы потом через несколько лет сам же смог в нём легко разобраться. Ну вот и придерживаюсь с тех пор этого правила.
0
|
|||||
|
|
||
| 21.04.2020, 22:08 | ||
|
Читал, что умеет она в несколько потоков, кто то писал, что даже 8. Лично я не смог её заставить так делать. Ну, знакомство было шапошное, чисто посмотреть. Накидал на коленке свой код, потому, что не дает покоя эта многозадачность. Вызвать процедуру записи в wav в несколько потоков без ошибок мне так и не удалось. Я понял, что с одним экземпляром движка это не сделать в принципе. Надо каждый раз инициализировать новый экземпляр SAPI5, после отработки его удалять, и всё это надо в потоке, которому передать параметры и следить за его работой! Сложности не соизмеримые с результатом. Гораздо проще написать отдельный exe-шник (к стати, всего 15 Кб вышел), который управляется с параметрами ком. строки, и уже из основной программы управлять его запусками. В принципе то же самое делает MP3book2005, когда кодирует lame.exe в mp3, значит ни чего зазорного в этом нет. Когда концепция выстроилась, дальше уже дело техники. Заложил я 10 потоков, загрузил нашего Льва Толстого "Война и мир" оба 2 тома. Разбил по 100 строк - 127 штук вышло. Это такие характеристики текста : 12 573 строки, 1 483 566 символов, ~ 25 часов чтения голосом. Голос Николай отработал за 6.38 минут Мой 4-х ядерный i5 грузился от 8% до 50%. Т.е смело могу ещё + 8 потоков накинуть, и за 3 минуты закодировать!. Голос Алёна 22k, более современный, грузил комп на 98-100%, при 10 потоках работал 6.91 минуту, считай на пределе. Теперь MP3book2005, работал 32 минуты, грузил комп на 25%. Т.е. по всему видно в 1 поток, и если бы на 1 ядро, то 100% загрузка. В общем это я к тому, что задачу можно распараллелить, но проще это сделать способом как я. Смысл соревнования есть, MP3book2005 не шибко быстрая.
1
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||
| 21.04.2020, 23:23 [ТС] | |||||||
![]() Взаимодействие с WINAPI всегда под рукой, а если что, то можно же ещё и DLL-айки подключать, написанные хотя бы на том же PowerBasic'е.
![]() Но сейчас просто ситуация такая, что я ничего нового не программирую, а только старый проект "до ума довожу", а там всё взаимодействие с COM и с WINAPI уже худо-бедно организовано. Так что, примеров, как выяснилось, вот прямо сейчас привести не смогу. Даже пытался специально найти те места, где у меня были сложности, и не нашёл. Сомнительные места кода удалены вместе со "следами преступлений" Так что пока тему проблемы передачи параметров в COM и WINAPI временно открывать не буду. Открою, когда возникнет первая же подобная трудность.
0
|
|||||||
| 21.04.2020, 23:23 | |
|
Помогаю со студенческими работами здесь
40
набор опытных C++ программистов Приглашаю На работу Опытных Программистов Нужен совет опытных программистов на C# Нужен совет опытных программистов
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|