методы отлова ошибок из VB6 to PWB

Раздел посвящен программированию с использованием Power Basic.
jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re:

Сообщение jangle » 16.08.2011 (Вт) 23:10

Qwertiy писал(а):И что же в нём неправильного?


Смотри мои посты выше

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.08.2011 (Вт) 23:13

jangle писал(а):
Qwertiy писал(а):И что же в нём неправильного?

Смотри мои посты выше

Я смотрел. Не вижу ошибки. Возможно, из-за незнания PB.
Последний раз редактировалось Qwertiy 16.08.2011 (Вт) 23:14, всего редактировалось 1 раз.

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: методы отлова ошибок из VB6 to PWB

Сообщение FireFenix » 16.08.2011 (Вт) 23:13

jangle писал(а):
iGrok писал(а):Троллишь толсто.


Это ты троллишь. Причем глупо. MS VС++ единственный возможный инструмент для профессиональной разработки в настоящее время.
Например в моей организации используется VS2008. Скажи чем заменить тут C++ если контора создает КИС и тренажеры содержащие 2D/3D графику?
При этом приходится работать с OpenGL и Direct3D, с шейдерами Cg/HLSL/GLSL, использовать 3DS MAX SDK, юзать STL и boost и просто asm, в добавок кучу тулз типа VTune или AMD Codeanalyst. Какой инструмент можно использовать кроме MSVC++?

Pascal? Delphi? .NET? Java? Да вагон всего, только это время всё подстраивать уже работающее...

Если вы не используете Nsight, то MSVS вполне заменяема другими средами, т.е. дело привычки и знаний работы
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re:

Сообщение jangle » 16.08.2011 (Вт) 23:22

Qwertiy писал(а):Я смотрел. Не вижу ошибки. Возможно, из-за незнания PB.


Задачка для урока информатики. Обращение к элементу за границей объявленного массива.
Строку с ошибкой сам сможешь найти?

#COMPILE EXE
#DIM ALL
'#DEBUG ERROR ON
GLOBAL x_ptr AS INTEGER PTR
FUNCTION PBMAIN () AS LONG

DIM x(129 TO 145) AS GLOBAL INTEGER
x_ptr=VARPTR(x(0))
MSGBOX STR$(@x_ptr[129])

END FUNCTION

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: методы отлова ошибок из VB6 to PWB

Сообщение jangle » 16.08.2011 (Вт) 23:27

FireFenix писал(а):Pascal? Delphi? .NET? Java? Да вагон всего, только это время всё подстраивать уже работающее...


Pascal? Delphi? - тормоза, нет нужных библиотек инфраструктуры и вообще ничего, и кстати давно трупы уже.
.NET? Java? - спасибо посмеялся, почему тогда не QBasic? Может тоже подойдет для разработки приложений реального времени. :mrgreen:

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.08.2011 (Вт) 23:28

jangle писал(а):Есть единственный стандарт языков в программировании это С/С++, а там проверки границ массива нет.

А если взять не массив, а vector? Хотя по стандарту проверка границ делается только для at и не делается для [], в VS эта проверка делается в обоих случаях.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.08.2011 (Вт) 23:43

jangle писал(а):Строку с ошибкой сам сможешь найти?

Я не считаю строку
Код: Выделить всё
x_ptr=VARPTR(x(0))
содержащей ошибку.

Например, рассмотрим код
Код: Выделить всё
#include <cstdio>

int &get129th(int *p)
  {
  return p[129];
  }

int main(void)
  {
  int *a = (new int[17]) - 129;
 
  get129th(a) = 12;
  printf("%d", a[129]);

  delete [] (a+129);
  return 0;
  }
обращения к неверной памяти не происходит.
А теперь задумаемся над тем, что следующие два вызова эквивалентны:
Код: Выделить всё
get129th(a)
get129th(&a[0])
Т. е. в последнем случае обращения к a[0] тоже нет.

Почему же я должен считать получение адреса с помощью VarPtr(x(0)) обращением к x(0), когда на самом деле происходит лишь копирование адреса?

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: методы отлова ошибок из VB6 to PWB

Сообщение iGrok » 17.08.2011 (Ср) 0:50

jangle писал(а):MS VС++ единственный возможный инструмент для профессиональной разработки в настоящее время.

Вот это противоречит всему остальному посту. Тот факт, что в вашем конкретном случае по всем критериям подошла студия с плюсами, ещё не делает её ЕДИНСТВЕННЫМ ВОЗМОЖНЫМ инструментом.

Кстати, а на основе чего был выбран именно этот инструмент? Производились ли какие-то исследования рынка систем разработки?

Ты корпоративный веб-портал тоже на плюсах будешь разрабатывать, я надеюсь? А то очень уж поржать охота.. :mrgreen:

В общем, завязывал бы ты с авторитарными высказываниями. Или хотя бы уж "имхо" к ним приписывал. А то некрасиво получается.
label:
cli
jmp label

Пред.

Вернуться в Power Basic

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20

    TopList