|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|
Быстрый старт в изучении C++ для относительно опытных программистов Basic18.04.2020, 16:11. Показов 13231. Ответов 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) Книги или справочники для опытных(или проффесиональных) программистов! |
|
|
||
| 18.04.2020, 18:24 | ||
|
Для создания оконного приложения в С++ слишком много стартового кода, который не всегда нужен.
0
|
||
|
|
||
| 18.04.2020, 18:32 | ||
![]() Это все равно что изучать высшую математику для понимания таблицы умножения. Вам в первую очередь нужно знать типы переменных Си.
0
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||
| 18.04.2020, 20:16 [ТС] | ||||
![]() Неужели там у них за столько лет не придумали какого-нибудь редактора форм, который писал бы код для форм и контролек автоматически? Ну по крайней мере, в VB и PowerBasic'е такие фишки присутствуют, а годков-то им обоим уже ого-го сколько. Первый "забросили" 22 года назад, а второй прекратил развиваться 9 лет назад в связи со смертью своего главного идейного вдохновителя и разработчика Роберта Зейла. ![]() WinAPI "разговаривает с нами" именно этим языком, волей-неволей приходится вникать. Говорят, что C++ хорош, например, для написания драверов. Но я (любитель) не могу представить себе такую ситуацию, чтобы мне самому понадобилось писать драйвер. А для моих "бытовых" задач вполне хватает VB и PowerBasic'а. Да я ещё и не все их возможности использую (ну просто по незнанию), хотя и стремлюсь к этому. ![]() На скриншотах видно, что для подавляющего большинства типов данных C/C++ имеется почти однозначное соответстствие с каким-нибудь типом данных в PowerBasic'е. Подозреваю, что точно также дело обстоит и в Pure Basic'е. Кстати, перед открытием этой ветки я колебался здесь (на подфоруме VB) открыть или там. И всё-таки решил здесь. В конце концов, VB это "интернациональный" язык программирования, через который прошли почти все
0
|
||||
|
|
|||
| 18.04.2020, 20:51 | |||
|
https://www.cyberforum.ru/blog... g2930.html
0
|
|||
|
|
|||||||
| 18.04.2020, 20:56 | |||||||
0
|
|||||||
|
|
|
| 18.04.2020, 22:23 | |
|
0
|
|
|
Модератор
|
|
| 18.04.2020, 23:18 | |
|
А при чем плюсы и WINAPI? Там под C почти все декларации, большая часть винды на си написана. Разница между плюсами и си значительна тем более если говорить о последнем стандарте.
Добавлено через 15 минут Argus19, в студии также можно накидать шаблон диалогового окна. Вызвать можно хоть из ассемблера. Добавлено через 10 минут Power_Basic, во многих средах такоё есть. Для плюсов есть c++ bulder, qtcreator где также можно накидать на форму элементов. Даже для ассемблера есть такие. Не следует путать язык и среду разработки. C и C++ универсальные языки в которых помимо графических приложений можно писать под разные платформы к примеру микроконтроллеры где никаких форм нет. Даже в VB6 нельзя просто создать форму - это обеспечивается средой.
0
|
|
|
|
||
| 18.04.2020, 23:48 | ||
![]() Мне нравится VB для написания несложных калькуляторов. Быстро, просто и сразу получаем оконное приложение. Очень жаль, что он больше не развивается. У всех ЯП свои особенности. И кому, что нравится.
0
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||||||||||||
| 19.04.2020, 01:02 [ТС] | |||||||||||||||||||||
![]() ![]() Мой потолок это младший лейтенант, пожалуй ![]() В PowerBasic'е редактор форм тоже автоматически создаёт вот такой код для формы с кнопкой:
Ну а по сравнению с VB, да, это существенное отличие, я согласен. Честно говоря, я всё-таки не самый глубокий знаток типов переменных ![]() Обычно в моих "внутренних" программах мне хватает Long, Dword, String, Wstring, String * n, Wstring * n, ну и ещё указатели на каждый из них иногда (Long PTR, String PTR ... ). А вот при взаимодействии с WINAPI и COM, ну там, да, приходится передовать то, что они оттуда просят ![]() К счастью, эдесь в дистрибутиве PowerBasic'а имеется библиотека внушительных размеров, где описаны все необходимые (по состоянию на 2011 год) декларации для вызова функций WINAPI. Достаточно просто написать в самом начале кода
Но, конечно, сам процесс передачи параметров у меня вызывает мало приятных эмоций ![]() Всегда путаюсь, то ли по ссылке передавать, то ли по значению. Обычно методом тыка пробую разные варианты и компилирую. В какой-то момент срабатывает, ну значит вроде правильно, поехали дальше ![]() ![]() Вроде бы называются немного по-разному, но выглядят ну очень одинаково ![]() Ну а если серьёзно, то неужели даже для такого начального уровня они такие разные? Вроде бы и там, и там приблизительно такие же FOR, IF, SWITCH (почти полный аналог бейсиковского SELECT CASE). Не, ну правда, вот смотрю я уроки того дядьки, про которые написал выше, и пока почти всё абсолютно знакомо. Ну прям как бейсик, честное слово. За исключением тех отличий, которые я перечислил в топике. Кстати, как раз добрался до темы передачи параметров в функции. Завтра утром буду смотреть. По утрам смотрю, на свежую голову ![]() ![]() Добавлено через 15 минут Добавлено через 8 минут А вот кстати, слегка отвлекаясь от темы. VBA в Офисе у них развивается хотя бы немного или так и застыл на этапе Office 2003? Если не развивается, то почему? А если всё-таки развивается, тогда почему бы и для Визуального Бейсика не возобновить поддержку? Хотелось бы хотя бы в общих чертах понять их логику
0
|
|||||||||||||||||||||
|
|
|
| 19.04.2020, 06:52 | |
|
0
|
|
|
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
|
||
| 19.04.2020, 11:35 | ||
Не по теме: Ну тогда предлагаю заодно и обсуждать и все остальные языки программирования начиная с ассемблера и до популярных: Kotlin, HCL, Go, Javascript, Typescript, Python, Java, PHP.... Добавлено через 4 минуты Имхо: это тема подходит, больше подходит для курилки чем для ветки VB
1
|
||
|
|
||
| 19.04.2020, 12:27 | ||
|
Я как-то поднимал эту тему на форуме. Минимальный размер EXE файла PE формата. Развития не получила - мало кому нужны небольшие исполняемые файлы.
0
|
||
|
Модератор
|
||||||
| 19.04.2020, 14:41 | ||||||
|
0
|
||||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||||||||||
| 19.04.2020, 17:55 [ТС] | ||||||||||||
![]() Боб Зейл вложил в него, в буквальном смысле, всю душу и всё здоровье. В 2011-ом вышла последняя 10-ая версия, а в 2012-ом он умер ![]() И, наверняка, у него было постоянное заочное соревнование с Билом Гейтсом. Что касается типов данных, VB действительно бедноват ![]() Уже несколько раз принимался за чтение знаменитой книги Дана Эпплмана по "состыковке" VB с WINAPI, но каждый раз буксую в самом начале, когда он начинает описывать пляски с бубном для передачи в качестве параметров целых чисел, превышающих 2 147 483 647. Там это такая "пытка", что всякое желание читать дальше пропадает ![]() Ведь через Long приходится передавать, а там же тогда уже отрицательные числа получаются. Приходится выходить из положения с помощью битной арифметики. Ну а мне, имея в PowerBasic'е полный набор любых типов данных, вникать во все эти "танцы" ну как-то совсе неаппетитно ![]() ![]() Я сейчас говорю про свои собственные программы. Ну какая мне разница, будет моя программа занимать на диске 50 Кб или 500? Да пусть хоть 10 Мб занимает, разницы большой не будет. Ну разве что грузиться с диска в ОЗУ будет на пару миллисекунд дольше. Но вот когда дело касается чужих "фирменных" программ, ну тогда разговор совсем другой. Когда я читаю, что для установки даже не всех, а только выборочных компонентов VS 2019 потребуется 40 Гб на диске, ну тогда это уже реальная катастрофа. У меня сейчас вся система со всеми прибамбасами занимает 42 Гб. Получается, будет в 2 раза больше. А я же ведь регулярно всё это дело архивирую. Значит и архивы тоже существенно увеличатся. Печаль ![]() Вот потому-то я даже и не помышляю её устанавливать, хотя она там, как я слышал, вроде бы даже бесплатно сейчас выложена (просто за регистрацию в системе).
![]() На самом деле, это очень большой и очень отдельный вопрос, с которым мне хотелось бы очень подробно разобраться. Да и большинство новичков, я уверен, тоже как и я действуют методом научного тыка ![]() Но чтобы не перегружать эту тему, открою сегодня или завтра отдельную ветку, посвящённую именно вопросу передачи параметров. Вот там и выскажусь о наболевшем ![]()
![]() Вот тогда уже точно придётся самому писать драйвер ![]() Кстати, одно время (ровно 10 лет назад) я очень сильно увлекался программированием на VBA Excel и даже мысли тогда были по поводу того, а зачем вообще кроме него ещё что-то нужно Таблицы для вывода информации в удобном виде всегда под рукой, взаимодействие с WINAPI точно такое же (с известными оговорками) как и в других языках.Но теперь я уже так не думаю ![]() ======================================== ========== Сегодня утром посмотрел два урока по перегрузке функций и по шаблонам функций. Как я понял в VB все эти проблемы решаются с помощью типа данных Variant ![]() Но вообще фишка очень интересная. Ну и вообще по ходу изучения постоянно убеждаюсь, что The trick прав, C++ действительно очень гибкий по сравнению с бейсиками.
0
|
||||||||||||
|
Модератор
|
||||||
| 19.04.2020, 21:08 | ||||||
|
Добавлено через 6 минут
0
|
||||||
|
|
||
| 20.04.2020, 13:23 | ||
|
Тут именно понять, как использовать примеры на C++ и C, в частности из MSDN, применительно к VB6. В идеале бы вообще не плохо составить табличку соответствия по основным ключевым словам и типам переменных.
0
|
||
|
63 / 48 / 12
Регистрация: 28.12.2014
Сообщений: 270
|
|
| 20.04.2020, 16:22 | |
|
Всю тему не читал.
1. ТС тоже, как и хороший преподаватель объясняет различия и сходства между языками и их ищет) 2. По вызову СИ функций из VB согласен с теми, кто ответил выше. Нужно этот вопрос знать, есть соответствующие книги. Если делать это без знания, то напрашивается ассоциация, все-равно, что писать текст программы без знания языка. 3. Для перевода объявлений с СИ на VB особо знания СИ, на мой взгляд - не требуется. Но есть книги, в которых приведены примеры на СИ ну и примеры в MSDN, чтобы их понять, хорошо бы СИ знать.
0
|
|
| 20.04.2020, 16:22 | |
|
Помогаю со студенческими работами здесь
20
набор опытных C++ программистов Приглашаю На работу Опытных Программистов Нужен совет опытных программистов на C# Нужен совет опытных программистов
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
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 05.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 - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|