Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/56: Рейтинг темы: голосов - 56, средняя оценка - 4.54
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443

Быстрый старт в изучении C++ для относительно опытных программистов Basic

18.04.2020, 16:11. Показов 14833. Ответов 253

Студворк — интернет-сервис помощи студентам
В этой ветке предлагаю обсуждать сходства и различия между C++ и Visual Basic.
Ну хотя бы для упрощения процесса изучения параллельного (дополнительного) языка для тех, кто уже относительно неплохо знаком с Visual Basic.
Ну просто как-то "не вкусно" начинать изучение совсем уж с нуля, когда, в принципе, уже и без того много знаешь (циклы, ветвления, указатели, видимость переменных ... ).

На самом деле, начал сейчас просмортр на ютубе курса по C++. Дядька очень толково и понятно всё объясняет, явно есть у него талант хорошего преподавателя.

Самые первые отличия, которые бросились в глаза, это:
- комменты обозначают двумя косыми чертами вместо апострофа,
- в конце каждой строки точка с запятой,
- все процедуры, функции, "тела" циклов ... в фигурных скобках,
- вложенные циклы можно описывать одной строкой,
- если переменная объявлена, но ей не присвоено значение, то она содержит случайный "мусор" из памяти, а не как у нас в бейсике, где сразу получает значение ноль или пустую строку,
- массивы с квадратными скобками вместо круглых,
- область видимости переменных ограничена фигурными скобками и причём неважно функция это, цикл или "тело" функции IF, а не как у нас область видимости переменных ограничена только функциями и процедурами.

Ветка открытая, пишите кто хочет.
Особенно приветствуются советы опытных специалистов, уже овладевших несколькими языками.
Ну уж им-то гораздо виднее, в чём сходство и различие разных языков.

Сказать по правде, лично мне сейчас C++ и его младший брат нужны, главным образом, для удобства изучения материалов MSDN.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.04.2020, 16:11
Ответы с готовыми решениями:

предложение для опытных программистов
добрый день уважаемые госпда программисты - необходима помощь по выполнению лабораторных по предмету Операционные Системы. Ищу человека...

Быстрый старт и софт для Modicon TM251MESE (Schneider Electric)
Так сложилась ситуация, что в скором времени предстоит познакомиться с ПЛК TM251MESE от Sneider Electric. Начал интересоваться как...

Книги или справочники для опытных(или проффесиональных) программистов!
Пожалуйста, Подскажите книги или справочники для опытных и проффесиональных программистов! Особенно хотелось бы найти: 1) полный...

253
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
25.04.2020, 20:02  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Строго говоря на C# (и vb.NET)можно программировать прямо в Блокноте.
Компилятор уже есть в системе изначально вместе с Framework!

Сохраняем в корень C: для простоты - c:\WinForm.cs
Теперь находим, где у вас там компилятор, у меня тут
C:\Windows\Microsoft.NET\Framework\v4.0. 30319\
и запускаем на выполнение этой строкой
csc.exe /target:winexe c:\WinForm.cs
И получаем exe размером всего в 4.6 Кб! Вот вам программа без всяких Студий и Гигабайт установок, и совершенно бесплатно. Точно так же можно и на VB.net написать.
У меня сработало вообще без проблем!
Компилировал на десктопе.
Запускается и на десктопе, и на ноутбуке!
Очень интересная возможность, буду иметь её в виду.
Миниатюры
Быстрый старт в изучении C++ для относительно опытных программистов Basic  
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
25.04.2020, 20:20
Цитата Сообщение от Power_Basic Посмотреть сообщение
Запускается и на десктопе, и на ноутбуке!
Ясное дело, .net это системные файлы. Можно компилировать под любую версию, которая есть на компе.
Главное, информации по этому вопросу, то как параметры ком. строки и прочего, в сети не мало. Есть и специальные редакторы с возможностью компиляции,чтобы не в Блокноте ковырять, а с подсветкой и т.п. ништяками.
0
Эксперт по электронике
6998 / 3314 / 341
Регистрация: 28.10.2011
Сообщений: 13,017
Записей в блоге: 7
25.04.2020, 20:25
Цитата Сообщение от Pro_grammer Посмотреть сообщение
И получаем exe размером всего в 4.6 Кб! Вот вам программа без всяких Студий и Гигабайт установок, и совершенно бесплатно.
Но требует .NET Framework нужной версии.

Цитата Сообщение от Power_Basic Посмотреть сообщение
Но самое удивительное, что он всё-таки запустился на ноутбуке
Видимо на ноуте были файлы MSVCP140.dll и VCRUNTIME140.dll. По умолчанию в Windown 7 их нет.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
25.04.2020, 22:09  [ТС]
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Ясное дело, .net это системные файлы. Можно компилировать под любую версию, которая есть на компе.
Главное, информации по этому вопросу, то как параметры ком. строки и прочего, в сети не мало.
Выходит, плохая новость состоит в том, что фреймворки очень громоздкие и занимают много места на диске, а хорошая новость это то, что они уже почти везде установлены

Цитата Сообщение от Pro_grammer Посмотреть сообщение
Есть и специальные редакторы с возможностью компиляции,чтобы не в Блокноте ковырять, а с подсветкой и т.п. ништяками.
Я с форума скопировал в Notepad++, и уже оттуда сохранял.
Компилировать прямо из него, наверно, никак не получится. А если и есть такие редакторы с функцией компиляции, то для отладки, наверно, всё равно понадобится "серьёзная" среда разработки.
0
Эксперт по электронике
6998 / 3314 / 341
Регистрация: 28.10.2011
Сообщений: 13,017
Записей в блоге: 7
25.04.2020, 22:12
Цитата Сообщение от Power_Basic Посмотреть сообщение
они уже почти везде установлены
Они разных версий бывают. На компе должна быть установлена та версия, которую требует приложение.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
25.04.2020, 22:38  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Видимо на ноуте были файлы MSVCP140.dll и VCRUNTIME140.dll. По умолчанию в Windown 7 их нет.
Сейчас посмотрел, такие файлы на ноуте, действительно имеются:

c:\Windows\System32\msvcp140.dll
c:\Windows\System32\vcruntime140.dll
Чистоту эксперимента соблюсти уже не получится, к сожалению.
Для этого надо пробовать запустить испытуемый EXЕ-шник сразу же после установки винды. А у меня с тех пор не то чтобы много программ было установлено, но всё-таки было кое что. Тотал Коммандер, конечно, "вне подозрений", да и утилитки, специфичные именно для этого ноутбука, тоже, похоже ни при чём.
Но я же ещё устанавливал достаточно продвинутые голосовые движки и ещё программу для создания RAM-диска. Подробностей установки уже, конечно же, не помню, но иногда бывает так, что устанавливаемые программы предлагают установить какой-нибудь компонент, которого нет на компьютере, и я всегда автоматически соглашаюсь. Может быть это их заслуга?

Сейчас глянул, на ноуте у меня Win_7_32_Корпоративная_Service_Pack_1.

Ещё есть семёрка на виртуалке десктопа, но там тоже уже установлены такие же речевые движки.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
25.04.2020, 22:58  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Они разных версий бывают. На компе должна быть установлена та версия, которую требует приложение.
Да здесь много версий, можно по вкусу подбирать
Миниатюры
Быстрый старт в изучении C++ для относительно опытных программистов Basic   Быстрый старт в изучении C++ для относительно опытных программистов Basic   Быстрый старт в изучении C++ для относительно опытных программистов Basic  

0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
25.04.2020, 23:15
Цитата Сообщение от locm Посмотреть сообщение
На компе должна быть установлена та версия, которую требует приложение.
в Микрософт официально с вами несогласны:

Обратная совместимость и .NET Framework
Платформа .NET Framework 4.5 и более поздних версий обратно совместима с приложениями, созданными с помощью более ранних версий .NET Framework. Иными словами, приложения и компоненты, созданные с использованием предыдущих версий платформы .NET Framework, будут без внесения изменений работать в .NET Framework 4.5 и более поздних версий.
Но они допускают, что иногда могут случаться не состыковки, тогда уже, как верно заметил Power_Basic, платформа .NET Framework 4.5 (или один из ее доработанных выпусков) работает параллельно с версиями 1.1, 2.0 и 3.5 и представляет собой обновление "на месте".
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
26.04.2020, 17:49  [ТС]
Цитата Сообщение от Catstail Посмотреть сообщение
Языки VB и C++ совершенно разные по духу (указатели, управление памятью, объектная подсистема).
Вот в этом-то и заключается корень всей проблемы. Дух у них действительно разный.
VB это что-то вроде кубиков конструктора, из которых можно относительно быстро что-то сложить (технология RAD), но внутрь самих кубиков заглянуть практически невозможно.
В отличии от VB, С и С++ позволяют программисту заглядывать так же и внутрь этих кубиков.

Другая аналогия:
В VB мы как бы строим дом из кирпичей, выкладывая их руками в строительных рукавицах, а в С и С++ можно строить хоть из песчинок с помощью пинцета.

Но всё бы было бы хорошо, если бы в арсенале VB имелись кубики-кирпичики на все случаи жизни. Но это, увы, не так. Когда кубиков не хватает, волей-неволей приходится обращаться к возможностям WINAPI или COM. И здесь нас поджидает главная засада. VB относительно хорош для работы с "кирпичиками", но относительно плох для работы с "песчинками".
А указатели-то это как раз и есть тот самый пинцет, с помощью которого можно "трогать" песчинки.
И да, такого инструмента в VB, увы, не существует. Следовательно, приходится как-то "выкручиваться".

Если кто-нибудь из новичков С++ (вроде меня), читающих этот пост, знаком только с VB и больше ни с каким другим языком программирования, ему будет сложнее. Если знаком с каким-нибудь языком, в котором имеются указатели, будет проще.

Как бы то ни было, но не разобравшись с указателями, невозможно понимать сишные примеры из MSDN, осмысленно обращаться к функциям WINAPI и COM, поскольку там они буквально на каждом шагу.

Разумеется, я тоже далеко не самый продвинутый знаток указателей на свете
Знаком с ними, можно сказать шапочно и обычно всегда (в своих программах на PowerBasic'е) стремлюсь обходиться без них, когда это возможно. Но для работы с WINAPI и COM такой подход часто даёт осечку.

Как я уже недавно говорил, в просмотре уроков по С++ добрался сейчас до темы указателей. Уже несколько раз пересмотрел этот 10-минутный урок.
Что-то вызывало во мне внутренний протест. И сегодня я понял, что именно.
Не понравился мне сишный синтаксис объявления указателей.
Вот для сравнения одна и та же программа на PowerBasic'е и на С++ (код умышленно разместил в обычных цитатах, чтобы иметь возможность выделить те места, о которых идёт речь):

FUNCTION PBMAIN () AS LONG
dim A as long
dim pA as dword ptr

A = 5
pA = varptr (A)

msgbox str$(pA) & $crlf & str$(@pA)
END FUNCTION
int main()
{
int a = 5;
int *pa = &a;
cout << pa << endl;
cout << *pa << endl;
}
Не понравилось то, что в сишном коде мы одним и тем же синтаксисом и объявляем указатель, и "добираемся" до значения переменной, на которую указывает этот указатель. В PowerBasic'е такой путаницы не существует. Спасибо покойному Бобу Зейлу, который, избавив меня от этой путаницы, сильно облегчил понимание всей темы.
0
Эксперт по электронике
6998 / 3314 / 341
Регистрация: 28.10.2011
Сообщений: 13,017
Записей в блоге: 7
26.04.2020, 18:10
Цитата Сообщение от Power_Basic Посмотреть сообщение
Не понравилось то, что в сишном коде мы одним и тем же синтаксисом и объявляем указатель, и "добираемся"
Объявляйте так если больше нравится.
C
1
int* pa = &a;
Цитата Сообщение от Power_Basic Посмотреть сообщение
В PowerBasic'е такой путаницы не существует.
Но легко спутать указатель с обычной переменной.
И зачем вы в этом коде получаете указатель на указатель?
Цитата Сообщение от Power_Basic Посмотреть сообщение
msgbox str$(pA) & $crlf & str$(@pA)
0
Модератор
10060 / 3905 / 885
Регистрация: 22.02.2013
Сообщений: 5,854
Записей в блоге: 79
26.04.2020, 18:12
Цитата Сообщение от Power_Basic Посмотреть сообщение
И да, такого инструмента в VB, увы, не существует. Следовательно, приходится как-то "выкручиваться".
Указатели небезопасны. Вместо указателей в VB6 используются более безопасные объекты - ссылки. Вместо использования указателя на какой-либо тип, нужно иметь указатель на объект. Вместо вызова функции по указателю, нужно иметь вызов метода по интерфейсной ссылке. Абсолютно любую задачу решаемую через сырые указатели как в C, можно решить также но с концепцией VB6 через ссылки. При желании в VB6 также можно работать с сырыми указателями, но это не так просто как и в C/C++ работать со ссылками в стиле VB6.

Цитата Сообщение от Power_Basic Посмотреть сообщение
Когда кубиков не хватает, волей-неволей приходится обращаться к возможностям WINAPI или COM. И здесь нас поджидает главная засада. VB относительно хорош для работы с "кирпичиками", но относительно плох для работы с "песчинками".
Неправда. Работать с WinAPI в подавляющем большинстве случаев очень даже просто.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
26.04.2020, 19:32  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
Объявляйте так если больше нравится.
C
1
int* pa = &a;
Ну так-то оно, конечно же, логичнее гораздо. Но "учитель"-то на ютубе объявляет именно так, как я показал. И дальше, наверняка, будет точно так же объявлять по ходу всего курса. Да и в MSDN тоже могут так же "нелогичо" объявлять.
Так что волей-неволей придётся привыкать
Ну я-то теперь уже знаю этот "подвох", поэтому мне уже проще. А вот для полных новичков это реально "разрыв мозга", когда одним и тем же синтаксисом обозначаются разные понятия.

Цитата Сообщение от Power_Basic
В PowerBasic'е такой путаницы не существует.
Цитата Сообщение от locm Посмотреть сообщение
Но легко спутать указатель с обычной переменной.
Ну всегда же венгерскую нотацию используем, поэтому трудно спутать. А я дык и вообще не скуплюсь на префиксы переменных в своих програмах:

lng_
dwrd_
struct_
gobj_arr_
gstr_
lng_ptr_
Цитата Сообщение от locm Посмотреть сообщение
И зачем вы в этом коде получаете указатель на указатель?
PureBasic
1
msgbox str$(pA) & $crlf & str$(@pA)
Нет, это вовсе не указатель на указатель.
На самом деле, @pA в PowerBasic'е это полный аналог *pA в С++.
Ну то есть это, так называемое, разыменовывание, хотя этот термин мне не нравится, потому что тоже вводит в заблуждение, на мой взгляд.
Ну а проще говоря, это получение значения переменной, на которую указывает данный указатель.
0
Эксперт по электронике
6998 / 3314 / 341
Регистрация: 28.10.2011
Сообщений: 13,017
Записей в блоге: 7
26.04.2020, 19:47
Цитата Сообщение от Power_Basic Посмотреть сообщение
@pA в PowerBasic'е это полный аналог *pA в С++.
Верояно имелось в виду pA? Потому что *pA это не адрес указателя, а данные хранящиеся в нем.
Тогда получается что указатели в PowerBasic похожи на те что в Си.
Например в PureBasic указатель это обычная переменная. У этого кода
PureBasic
1
2
3
4
5
6
7
x = 0
*p = @x
Debug *p
Debug PeekI(*p)
PokeI(*p, 2)
Debug PeekI(*p)
Debug x
результат выполнения.
4403020
0
2
2
С тем же результатом можно использовать переменную
PureBasic
1
2
3
4
5
6
7
x = 0
p = @x
Debug p
Debug PeekI(p)
PokeI(p, 2)
Debug PeekI(p)
Debug x
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
26.04.2020, 20:09  [ТС]
Цитата Сообщение от The trick Посмотреть сообщение
Указатели небезопасны. Вместо указателей в VB6 используются более безопасные объекты - ссылки. Вместо использования указателя на какой-либо тип, нужно иметь указатель на объект. Вместо вызова функции по указателю, нужно иметь вызов метода по интерфейсной ссылке. Абсолютно любую задачу решаемую через сырые указатели как в C, можно решить также но с концепцией VB6 через ссылки. При желании в VB6 также можно работать с сырыми указателями, но это не так просто как и в C/C++ работать со ссылками в стиле VB6.
По правде говоря, вообще не понял, о чём идёт речь. Вот прямо сейчас погуглил "ссылки в vb" и первым номером мне предложили вот эту страницу:
https://docs.microsoft.com/ru-... d-elements
Стал вчитываться, сообразил, что это документация для VB.NET. И кстати, это ещё один аргумент к тому, что в поисках информации по VB первым делом почти всегда подсовывают инфу именно по VB.NET.
Ну а ниже там в результатах поиска гугл речь идёт о ссылках на сайты, о ссылках браузера, ну а ещё ниже вообще сплошной VB.NET.

Цитата Сообщение от The trick Посмотреть сообщение
Неправда. Работать с WinAPI в подавляющем большинстве случаев очень даже просто.
Не, ну когда что-то уже хорошо знаешь, тогда всегда кажется, что оно очень просто
Вот я, например, выучу китайский язык в совершенстве и тоже буду говорить, что это просто
0
Модератор
10060 / 3905 / 885
Регистрация: 22.02.2013
Сообщений: 5,854
Записей в блоге: 79
26.04.2020, 21:32
Цитата Сообщение от Power_Basic Посмотреть сообщение
По правде говоря, вообще не понял, о чём идёт речь. Вот прямо сейчас погуглил "ссылки в vb" и первым номером мне предложили вот эту страницу:
https://docs.microsoft.com/ru-... d-elements
Стал вчитываться, сообразил, что это документация для VB.NET. И кстати, это ещё один аргумент к тому, что в поисках информации по VB первым делом почти всегда подсовывают инфу именно по VB.NET.
Ну а ниже там в результатах поиска гугл речь идёт о ссылках на сайты, о ссылках браузера, ну а ещё ниже вообще сплошной VB.NET.
Visual Basic
1
2
3
4
5
6
7
8
Dim cRef1   As Collection
Dim cRef2   As Collection
 
' // Создаем новый объект Collection и ссылку присваиваем cRef1
Set cRef1 = New Collection
 
' // Теперь 2 ссылки ссылаются на один и тот же объект
Set cRef2 = cRef2
Вызов по указателю соответственно также через интерфейсную ссылку можем на любой объект присвоить, поддерживающий нужный интерфейс. Это как раз полиморфизм, когда имея одну интерфейсную ссылку можно вызывать разные методы у разных объектов. Тоже самое что имея ссылку на функцию в C вызывать по этой ссылке функцию с нужным прототипом.

Цитата Сообщение от Power_Basic Посмотреть сообщение
Не, ну когда что-то уже хорошо знаешь, тогда всегда кажется, что оно очень просто
Вот я, например, выучу китайский язык в совершенстве и тоже буду говорить, что это просто
Сколько было уже сказано, ни одного примера "сложности" приведено не было.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
26.04.2020, 23:18  [ТС]
locm, на самом деле, я во всём этом путаюсь, если честно.
Но вот вам для анализа две работающие программы, которые я уже процитировал выше, но только на этот раз это полный код обеих программ и тоже с результатами выполнения:

PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
#COMPILE EXE
#DIM ALL
 
FUNCTION PBMAIN () AS LONG
  dim A as long
  dim pA as long ptr
 
  A = 5
  pA = varptr (A)
 
  msgbox str$(pA) & $crlf & str$(@pA)
END FUNCTION
---------------------------------

Вот такой результат в MsgBox'е:
17034444
5
============================

C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
 
int main()
{
    int a = 5;
    int* pa = &a;
    cout << pa << endl;
    cout << *pa << endl;
}
-----------------------------

Вот такой результат в консоли:
00CFF980
5
Добавлено через 23 минуты
Цитата Сообщение от The trick Посмотреть сообщение
Вызов по указателю соответственно также через интерфейсную ссылку можем на любой объект присвоить, поддерживающий нужный интерфейс. Это как раз полиморфизм, когда имея одну интерфейсную ссылку можно вызывать разные методы у разных объектов.
Понял о чём речь. ООП. Ну это тогда как бы ещё дальше от "песчинок" и от "пинцета". Инкапсуляция и всё такое. Ну да, методы и свойства можно вызывать только через ссылку на экземпляр класса. Указатели уже точно ни при чём.

Цитата Сообщение от The trick Посмотреть сообщение
Тоже самое что имея ссылку на функцию в C вызывать по этой ссылке функцию с нужным прототипом.
Это мы ещё не проходили

Цитата Сообщение от The trick Посмотреть сообщение
Неправда. Работать с WinAPI в подавляющем большинстве случаев очень даже просто.
Цитата Сообщение от The trick Посмотреть сообщение
Сколько было уже сказано, ни одного примера "сложности" приведено не было.
Да пример очень простой. Я совсем недавно целых две недели потратил на то, чтобы со счётчиками PDH разобраться, ну вот и пример
0
Эксперт по электронике
6998 / 3314 / 341
Регистрация: 28.10.2011
Сообщений: 13,017
Записей в блоге: 7
26.04.2020, 23:29
Цитата Сообщение от Power_Basic Посмотреть сообщение
Вот такой результат в MsgBox'е:
То есть через собаку получаем данные по указателю? Думал что это получение адреса.
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
26.04.2020, 23:53  [ТС]
Цитата Сообщение от locm Посмотреть сообщение
То есть через собаку получаем данные по указателю? Думал что это получение адреса.
Ну да, в PowerBasic'е именно так.
0
Модератор
10060 / 3905 / 885
Регистрация: 22.02.2013
Сообщений: 5,854
Записей в блоге: 79
27.04.2020, 00:14
Цитата Сообщение от Power_Basic Посмотреть сообщение
Указатели уже точно ни при чём.
Как раз-таки причем, поскольку ссылка - это умный указатель. Любую задачу с указателями можно выполнить с использованием ссылок в VB6. Указатель в сыром виде небезопасен и не может быть реализован в концепции VB6. Можно придумать тысячу способов как "выстрелить себе в ногу" с помощью указателей.

Цитата Сообщение от Power_Basic Посмотреть сообщение
Я совсем недавно целых две недели потратил на то, чтобы со счётчиками PDH разобраться, ну вот и пример
Ну разобрался в итоге? В чем проблема-то была?
0
 Аватар для Power_Basic
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
27.04.2020, 00:43  [ТС]
Цитата Сообщение от The trick Посмотреть сообщение
Как раз-таки причем, поскольку ссылка - это умный указатель. Любую задачу с указателями можно выполнить с использованием ссылок в VB6.
Ну это уже "высший пилотаж".

Цитата Сообщение от The trick Посмотреть сообщение
Ну разобрался в итоге? В чем проблема-то была?
Да в том-то и дело, что уже сейчас, оглядываясь назад, и мне тоже всё кажется очень простым. Всего 5 WINAPI функций пришлось использовать в конечном итоге. А когда только начинал во всём этом материале (по PDH) разбираться, было реально сложно понять, какие именно функции надо использовать. Их же там очень много.

А со словарями в SAPI 5.4, до сих пор не могу разобраться, как их надо подключать. Это, конечно, не WINAPI, а COM, но для меня они сейчас почти одно и то же.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.04.2020, 00:43

набор опытных C++ программистов
Большой иностранный банк проводит набор опытных C++ программистов для IT-департамента своего московского офиса. Необходимы кандидаты с...

Приглашаю На работу Опытных Программистов
Всем привет . Я ищю Хороших программистов для работы над Онлайн игрой ( в типе neverlands) От вас Требую одно хорошую ...

Нужен совет опытных программистов на C#
Всем добрый день! Я здесь абсолютно новенький! Так что прошу сразу не кидать камнями если задаю вопросы не там где нужно! :) Совсем...

Нужен совет опытных программистов
Задача: Написать систему логирования LS кода, подсчета производительности (как долго исполняется LS код) и учета ошибок. Цель: получить...

Требуется совет опытных программистов
Основы С++ более менее изучены. Что же дальше? Что учить чтоб писать хоть какие то простенькие прикладные программы?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
160
Ответ Создать тему
Новые блоги и статьи
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы ### Аннотация Представлено исследование по разработке агентной модели микоризной. . .
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики Контекст Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии Введение Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np class PlantAgent: def __init__(self, name, strategy, initial_biomass): self. name = name self. strategy = strategy # "greedy" (широколиственные) или. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru