Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.00/1: Рейтинг темы: голосов - 1, средняя оценка - 4.00
 Аватар для Argus19
1427 / 444 / 78
Регистрация: 24.09.2017
Сообщений: 2,525
Записей в блоге: 22

Twin Basic

27.10.2024, 20:05. Показов 28019. Ответов 330
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Несмотря на то, что проект Twin Basic по словам авторов в заключительной стадии "бета", скачал и попробовал.
Непривычный интерфейс.
Открыл проект, созданный в IDE Visual Basic 6.0, скомпилировал и 32 и 64 разрядные версии. По объёму результирующего кода получилось больше. Может быть нет оптимизации кода.
Кто-нибудь из форумчан может что-то сказать об этой IDE ?
3
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.10.2024, 20:05
Ответы с готовыми решениями:

Где бесплатно скачать учебник по Visual Basic 6 и Visual Basic .Net ?
Где бесплатно скачать учебник по Visual Basic 6 и Visual Basic .Net

Вычисление значений функции двух переменных в Visual Basic - Visual Basic
Помогите пожалуйста! В среде VB написать программу вычисления значений функции двух переменных. Ориентировочный вид окна программы и...

Visual Basic 6 и Visual Basic .NET - в чем различия?
Visual Basic и Visual studio это не одно и тоже? если нет то в чём разница, по мимо оформления?

330
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 13:49
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от HackerVlad Посмотреть сообщение
ну если новый раздел открывать то нужно и модераторов в него набирать понимаешь, а кто захочет...
Будто бы туда нрод сразу набежит. По факту там будут те же самые лица, которые тут пишут. Еще вопрос на засыпку, у разделов VBA и VB разные модераторы?
0
Эксперт по электронике
6574 / 3201 / 335
Регистрация: 28.10.2011
Сообщений: 12,482
Записей в блоге: 7
03.12.2024, 14:19
Цитата Сообщение от Mikle Quits Посмотреть сообщение
Можно просто переименовать раздел "Pure Basic" в "Pure Basic, Twin Basic, Power Basic и т. д."
И зачем? Может лучше раздел VB переименовать в "Visual Basic, Twin Basic, Power Basic, Free Basic, Real Basic и др."? Чтобы была тут куча тем по всем диалектам!
Кстати, на форуме не редко появляются вопросы про Free Basic, а раздела нет.
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 14:23
Я бы сказал, Twin Basic не надо мешать с чем-то другим, имхо, это нечто выдающееся, как бы цветок среди камней, это уже видно сейчас.
1
sleep
 Аватар для I can
4930 / 4590 / 840
Регистрация: 13.04.2015
Сообщений: 9,740
03.12.2024, 14:38
Цитата Сообщение от testuser2 Посмотреть сообщение
у разделов VBA и VB разные модераторы?
А самому слабО посмотреть?




1
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 14:51
Цитата Сообщение от I can Посмотреть сообщение
А самому слабО
Это был не вопрос..
0
sleep
 Аватар для I can
4930 / 4590 / 840
Регистрация: 13.04.2015
Сообщений: 9,740
03.12.2024, 14:53
Цитата Сообщение от testuser2 Посмотреть сообщение
Это был не вопрос..
Извини, знак вопроса привиделся:
Цитата Сообщение от testuser2 Посмотреть сообщение
у разделов VBA и VB разные модераторы?
и слово "вопрос" тоже
Цитата Сообщение от testuser2 Посмотреть сообщение
вопрос на засыпку
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 15:15
Цитата Сообщение от I can Посмотреть сообщение
Извини, знак вопроса привиделся:
Это как бы предложение ответить себе на вопрос )

Добавлено через 16 минут
Для тех, кому этот вопрос актуален. Сам то я давно знаю ответ на этот вопрос..)
0
Испарился
 Аватар для HackerVlad
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
03.12.2024, 17:20
Я почему-то сразу понял что это был сарказм)

Добавлено через 9 минут
testuser2, в VBA кстати shanemac51, The trick, Catstail, zss
shanemac51 ещё добавляется как видишь сам
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 17:22
shanemac51 еще по Access-у специализируется вроде
0
Испарился
 Аватар для HackerVlad
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
03.12.2024, 17:22
Посмотри например в vb.net совсем другие модеры
Yury Komar, Элд Хасп, zss

zss только совпадает он вездесущ походу
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
03.12.2024, 17:49
Цитата Сообщение от HackerVlad Посмотреть сообщение
Yury Komar, Элд Хасп, zss
Они кстати там всем Нетом заведуют..
0
03.12.2024, 18:17
 Комментарий модератора 
Заканчиваем офтоп
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
04.12.2024, 17:22
Неплохо если бы Twin basic перенял у Free basic 2 вещи, струкрутры-классы и еще мне нравятся там строки. В FB в строках ZString инфрмация о размере содержистя в заголовке, а не в буфере строки, по моему это удобнее во многих случаях, чем когда размер в буфере строки.
Цитата Сообщение от Замабувараев Посмотреть сообщение
Во фрибесике структура — это почти что класс, а переменная — это экземпляр этого класса (объект). Если вы добавляете инициализатор в структуру, то фрибесик сгенерирует конструктор класса (и деструктор), в котором полю Age будет присвоено 35.
Цитата Сообщение от Power_Basic Посмотреть сообщение
Помню, писал однажды программу, в которой был массив UDT. А в том UDT как раз были имена и фамилии
В компиляторных потрохах фрибесика тип данных String — это структура следующего устройства:
PureBasic
1
2
3
4
5
6
7
8
Type FBSTRING
 ' Указатель на данные + нулевой символ
 Data As ZString Ptr
' Длина строки без учёта нулевого символа
 Len As Integer
' Размер занимаемой памяти
 Size As Integer
End Type
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
04.12.2024, 20:40
Цитата Сообщение от testuser2 Посмотреть сообщение
В FB в строках ZString инфрмация о размере содержистя в заголовке, а не в буфере строки, по моему это удобнее во многих случаях, чем когда размер в буфере строки.
А в чем проблема создать такую структуру?

Цитата Сообщение от testuser2 Посмотреть сообщение
Во фрибесике структура — это почти что класс, а переменная — это экземпляр этого класса (объект).
Для 100% обратной совместимости объекты должны являться COM объектами.
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
05.12.2024, 02:05
Цитата Сообщение от The trick Посмотреть сообщение
А в чем проблема создать такую структуру?
в том что ее нельзя использовать как обычную строку в коде. Допустим надо собрать массив строк, то логичнее было бы сливать все строки в единый буфер через разделитель ноль, а сам массив, это заголовки. Потом удобнее обрабатывать этот массив, перебирая заголовки и там же беря размеры. А единый буфер можно замапить в одну большую строку и чтобы быстро там нахдить там какую-то подстроку.
Цитата Сообщение от The trick Посмотреть сообщение
Для 100% обратной совместимости объекты должны являться COM объектами.
Так обратная совместимость пусть будет регрессивная. Просто как новую дополнительную возможность бы добавили.
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
07.12.2024, 10:45
Цитата Сообщение от testuser2 Посмотреть сообщение
Да раздел-то хрен с ним, у нас сильно отстает обсуждение, хотя отчасти понятно почему.
testuser2, для создания отдельного раздела пока мало тем, я думаю что на данный момент это неактуально. Тут даже для FreeBasic нет раздела, хотя тем намного больше. Т.к. Twin Basic позиционирует себя как на 100% совместимый с VB6 то его обсуждение в этом разделе легитимно. Если потом будет поток вопросов и тем по нему, то с легкостью можно будет создать подраздел и темы из основного раздела перенести в него.
1
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
07.12.2024, 12:15
Цитата Сообщение от testuser2 Посмотреть сообщение
Visual Basic
1
2
3
    Dim a As Long, b As Long, c As Long
     Array(a, b, c) = Array(1, 2, 3)
     Debug.Print a, b, c
Показалось мне сначала, что подобный вид выражения можно легко воспроизвести на VB, однако на деле оказались тоже просто, но с некторыми нюансами.. Вместо RefArray можно использовать и обычный Array, однако если представить присвоение таким способом больших строк или массивов, логичней было бы избежать лишних копирований, для чего и сделана функця RefArray, создающая массив ссылок на переменные. Параметр lp0 в ней используется лишь для вычисления указателя массива параметра, поскольку напрямую этот указатель не получить в виду ограничений VB для массива параметров, также, к сожалению нельзя задать этот параметр как Optional в виду другого ограничения использования Optional параметров вместе с ParamArray.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Declare Sub GetMem4 Lib "msvbvm60" (Src As Any, Dst As Any)
Private Declare Function vbaAryMove Lib "msvbvm60" Alias "__vbaAryMove" (Dst() As Any, ByVal pSrc As Long) As Long
 
Private Sub testArray()
    Dim a$, b&, c#
    Dim e$, f&, g#    
    
    LeftArray(a, b, c) = RefArray(0, "afff", 4343, 989.879)
    LeftArray(e, f, g) = RefArray(0, a, b, c)
    Debug.Print a, b, c; vbCr; e, f, g
End Sub
 
Property Get RefArray(ByVal lp0&, ParamArray arInp()) As Variant()
    Dim ptr&
    GetMem4 ByVal VarPtr(lp0) + 4, ptr
    vbaAryMove RefArray, ptr
End Property
 
Property Let LeftArray(ParamArray arDst(), arSrc())
    Dim i&
    For i = 0 To UBound(arDst)
        arDst(i) = arSrc(i)
    Next
End Property
0
COM‐пропагандист
 Аватар для Замабувараев
936 / 785 / 149
Регистрация: 18.12.2014
Сообщений: 2,256
Записей в блоге: 4
07.12.2024, 12:47
Цитата Сообщение от testuser2 Посмотреть сообщение
логичнее было бы сливать все строки в единый буфер через разделитель ноль
Это неудобно. И вот почему.

Допустим, есть массив строк:
Code
1
Dim Vector(2) As String = {"Первый", "Второй", "Третий"}
И все символьные данные хранятся друг за другом.

Нам нужно заменить второй элемент:
Code
1
Vector(1) = "Другой элемент"
В буфер для второго элемента он не влезает. Значит, нужно дополнительно выделять память, в то же время в оригинальном массиве остаётся пустота, которую задействовать нельзя.

Итого имеем две проблемы: фрагментация памяти + перерасход памяти.
0
1386 / 842 / 91
Регистрация: 08.02.2017
Сообщений: 3,585
Записей в блоге: 1
07.12.2024, 13:51
Цитата Сообщение от Замабувараев Посмотреть сообщение
Нам нужно заменить второй элемент:
Это не удобно для общего случая использования массива, но удобно в каких-то отдельных случаях. Допустим надо быстро находить какую-то подстроку во всем массиве. Или заменить какую-то подстроку во всем массиве, тогда удобнее взять весь буфер как одну строку и выполнить замены, затем пересчитать указатели и размеры в заголовочном массиве

Добавлено через 4 минуты
Удобнее искать, можно задать подстроку, находящуюся в начале каждой строки, как Chr(0) & "подстрока", а со строками bstr так уже не сделать, там вначале будет размер
0
Испарился
 Аватар для HackerVlad
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
07.12.2024, 19:23
Да, я помню что в огромной строке искать быстрее, чем в большом многострочном массиве

Добавлено через 2 минуты
Цитата Сообщение от Замабувараев Посмотреть сообщение
Dim Vector(2) As String = {"Первый", "Второй", "Третий"}
Это где вы такой синтаксис видели? Это не работает даже в TwinBasic, не говоря уже про VB6
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.12.2024, 19:23
Помогаю со студенческими работами здесь

Отличия версий Visual Basic 6.0 от Visual Basic 6.5?
У меня 3 вопроса: 1.Чем отличается версия Visual Basic 6.0 от Visual Basic 6.5? 2.Можно ли запустить проект созданный раннее в Visual...

что лучше MSI R6870 Twin Frozr II или MSI N570GTX Twin Frozr II/OC, 1.3Гб?
выбор между PCI-E 2.1 MSI R6870 Twin Frozr II, 1Гб, GDDR5, Ret и PCI-E 2.0 MSI N570GTX Twin Frozr II/OC, 1.3Гб, GDDR5, OC, Ret ...

не могу настроить twin frozr 3
подскажите!я в железе не очень!купил видюху twin frozr 3,говорят видушка достаточно мощная захотел протестить на игре кризис 2 на полных...

MSI N560GTX-Ti Twin Frozr II/OC
Столкнулся с такой проблемой, в игре начали появляться непонятные полосы, расплываться объекты (см. скриншоты), пока заметил такую проблему...

MSI GTX480 twin frozr
Всем привет, такая проблема- как обычно видеокарта не дает компу стартануть и бросает его в ребут по циклу, разобрал карту нашел скол на...


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

Или воспользуйтесь поиском по форуму:
180
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru