Статические массивы это костыльная башня. У них внутри лежит динамический массив.
Вот только у динамических полно сахара и Linq-подобных методов, и в целом они более юзабельны.
А статичные существуют только потому, что в паскалях прошлого века они были. Но, на сколько я понимаю - в старых паскалях они хотя бы располагались на стеке (на стеке данные быстрее читаются/записываются). А в PABC.Net они полностью бесполезны.
Ну, я чтоб определять какой инструмент где предпочтительнее - просто знаю как что устроено и по случаю вспоминаю что лучше.
А знания эти накоплены регулярным ползаниями по внутренностям реализации, с помощью декомпилятора DotPeek. К примеру, чтоб посмотреть как устроены статичные массивы - можно взять эту программу:
begin
var a: array[1..10] of byte;
end.
Откомпилировать, удалить .pdb файл который был сгенерирован при компиляции (иначе декомпилятор вытащит из .pdb исходники, вместо того чтоб декомпилировать). И затем скормить DotPeek-у готовый .exe файл. Можно взять и перетащить прямо из папки в DotPeek любой .exe или .dll файл. Если он создан в .Net языке - его проглотит.
А дальше разберётесь. Там показывает дерево пространств имён, и в них - списки типов. И под ПКМ есть полно полезного функционала. Ну и Ctrl+клик работает так же как в паскале.
Не совсем так: если бы я не знал о возможных нюансах (уже динамические), то предпочёл бы статические массивы для конкретной размерности, а динамические - для остальных.
Это потому что вы ещё не знаете о свойствах и методах динамических массивов.
@Kotov имел в виду что когда успел попользоваться и теми и теми, при чём на полную, то есть не в старом стиле - статическими пользоваться уже и не захочется.
А свойства и методы видно так:
begin
var a: array[,] of byte;
a
end.
Вставьте это в пустой файл, подождите пока загрузится анализатор кода (пока не появятся точки сворачивания) и поставьте точку после a на третьей строчке. Вам выведет список всего что можно делать с динамичными массивами. А у статичных по точке вообще ничего нет, с ними можно только квадратными скобками работать.
А это потому, что Вам сколько не талдычить, что нужно больше читать, Вы все равно этого не делаете. Иначе бы знали, что статические массивы в PascalABC.NЕТ оставлены только для целей совместимости и использования в записях, которыми планируют обмениваться с типизированными файлами.
Пожалуйста. Вы напрасно думаете, что сюда народ приходит для того, чтобы каждому спросившему
давать детальные справки по поводу того, откуда взято то или иное суждение или утверждение. Вам информацию дали, хотите - используйте ее, не хотите - Ваше право. А то, чего Вы хотите, называется очень просто: обучение. Форум для таких вещей не предназначен.
Александр, (?) прошу прощения, если задел Вас зря, указывая на название темы (“Помощь новичкам”) и попросив подтвердить Ваши утверждения. Я допускаю, что могу ошибаться и вполне возможно, что Вы или кто-то другой может оказаться умнее почти всех на форуме, но мне это не интересно. Хотя сложилось такое впечатление, будто через иронию и сарказм Вы намеренно пытаетесь продемонстрировать своё явное или мнимое превосходство или статус. Кроме того, нас учили, что цитаты забавны, но уместны в тему и в меру.
Сначала я учился в Pascal Abc .Net склеивать субтитры для проектора и на днях по крупицам собрал примеры и смог без проблем разобрать огромный файл сиквенирования даже на слабом компьютере в лаборатории. Сейчас я рассматриваю язык как прекрасную возможность переписать старые наработки и заполнить нишу узкопрофильных утилит, в частности - подзадачи в сфере биоинформатики. Проще говоря, даже в почти незначительных вопросах я не привык верить на слово и работать без проверки или сравнения с первоисточником.
Если же мои вопросы или ответы всё равно Вас задевают, постарайтесь не забывать, что я в этом деле пока что всего лишь новичок.
Пока что печатаю и читаю Справку, книги довольно специфические, а вот за отдельные примеры программ - отдельная благодарность.
С уважением (без сарказма).
А это уже Ваша проблема. Первоисточниками в случае PascalABC.NЕТ являются Справка, презентации на официальном сайте и все по данной тематике, написанное от имени @Admin и @ibond. Остальным можете продолжать писать в стиле “Вы это сами такие умные или Вам кто-то сказал ?”. Но без меня.
Как работать с debug версией PascalABC.Net? Если я запускаю ход со входом в подпрограмму мне выдается ошибка. Даже в коде: begin writeln end.
пишут это :
Внутренняя ошибка компилятора в модуле [pabcnetc.exe] :'System.Exception: System.UnauthorizedAccessException: Отказано в доступе по пути "C:\Program Files (x86)\PascalABC.NET\Lib\PABCSystem.pcu". в System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) в System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) в System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) в PascalABCCompiler.PCU.PCUWriter.CloseWriter() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\PCU\PCUWriter.cs:строка 561 в PascalABCCompiler.Compiler.ClosePCUWriters() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 2344 в PascalABCCompiler.Compiler.ClosePCUReadersAndWriters() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 2323 в PascalABCCompiler.Compiler.Compile() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 1856'
Вы, случаем, не пытаетесь 2 паскаля одновременно запускать? В любом случае, вы какой то другой программой заблокировали доступ к PABCSystem.pcu… Попробуйте перезагрузить компьютер и включить отладку уже не запуская ничего лишнего.
Исключение поймано и в debug версии. Понятен алгоритм получения исключения, если нужно, то сообщу.
Подробная информация об использовании оперативной
(JIT) отладки вместо данного диалогового
окна содержится в конце этого сообщения.
************** Текст исключения **************
System.ArgumentOutOfRangeException: Длина не может быть меньше нуля.
Имя параметра: length
в System.String.Substring(Int32 startIndex, Int32 length)
в VisualPascalABC.OutputWindowForm.InputTextBox_TextChanged(Object sender, EventArgs e) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\OutputWindowForm.cs:строка 144
в System.Windows.Forms.Control.OnTextChanged(EventArgs e)
в System.Windows.Forms.Control.set_Text(String value)
в System.Windows.Forms.TextBoxBase.set_Text(String value)
в System.Windows.Forms.TextBox.set_Text(String value)
в VisualPascalABC.OutputWindowForm.VisualPascalABCPlugins.IOutputWindow.set_InputTextBoxText(String value) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\OutputWindowForm.cs:строка 178
в VisualPascalABC.WorkbenchRunService.UpdateReadRequest(Boolean changeSelected) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\Workbench\RunnerManagerHandlers.cs:строка 231
в VisualPascalABC.Form1.ChangedSelectedTab() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\Workbench\WindowOperations.cs:строка 443
в VisualPascalABC.CodeFileDocumentControl.CodeFileDocumentControl_Activated(Object sender, EventArgs e) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\CodeFileDocument.cs:строка 336
в System.Windows.Forms.Form.OnActivated(EventArgs e)
в System.Windows.Forms.Form.set_Active(Boolean value)
в System.Windows.Forms.Form.ActivateMdiChildInternal(Form form)
в System.Windows.Forms.Form.WmMdiActivate(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Загруженные сборки **************
mscorlib
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2650.0 built by: NET471REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
PascalABCNET
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
System
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
PluginsSupport
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PluginsSupport.DLL
----------------------------------------
CompilerTools
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CompilerTools.DLL
----------------------------------------
WeifenLuo.WinFormsUI.Docking
Версия сборки: 2.2.5489.36547
Версия Win32: 2.2.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/WeifenLuo.WinFormsUI.Docking.DLL
----------------------------------------
ICSharpCode.TextEditor
Версия сборки: 0.0.0.0
Версия Win32: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.TextEditor.DLL
----------------------------------------
Compiler
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Compiler.DLL
----------------------------------------
Errors
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Errors.DLL
----------------------------------------
ParserTools
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ParserTools.DLL
----------------------------------------
Localization
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Localization.DLL
----------------------------------------
System.Configuration
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2558.0 built by: NET471REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Windows.Forms.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.6.1055.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
CodeCompletion
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CodeCompletion.DLL
----------------------------------------
SyntaxTree
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTree.DLL
----------------------------------------
Accessibility
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2558.0 built by: NET471REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
PresentationFramework
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll
----------------------------------------
WindowsBase
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------
PresentationCore
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
ICSharpCode.SharpDevelop
Версия сборки: 4.2.1.0
Версия Win32: 4.2.1.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.DLL
----------------------------------------
System.Design
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2558.0 built by: NET471REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Design.dll
----------------------------------------
ICSharpCode.Core.WinForms
Версия сборки: 4.2.1.0
Версия Win32: 4.2.1.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.Core.WinForms.DLL
----------------------------------------
ICSharpCode.Core
Версия сборки: 4.2.1.0
Версия Win32: 4.2.1.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.Core.DLL
----------------------------------------
Debugger.Core
Версия сборки: 3.0.0.2649
Версия Win32: 3.0.0.2649
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Debugger.Core.DLL
----------------------------------------
ICSharpCode.SharpDevelop.Widgets
Версия сборки: 4.2.1.8805
Версия Win32: 4.2.1.8805
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.Widgets.DLL
----------------------------------------
ICSharpCode.SharpDevelop.Dom
Версия сборки: 4.2.1.8805
Версия Win32: 4.2.1.8805
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.Dom.DLL
----------------------------------------
System.Data
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
TreeConverter
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/TreeConverter.DLL
----------------------------------------
SemanticTree
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SemanticTree.DLL
----------------------------------------
NETGenerator
Версия сборки: 3.5.0.2095
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/NETGenerator.DLL
----------------------------------------
System.Numerics
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2558.0 built by: NET471REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
PascalABCParser
Версия сборки: 0.0.0.0
Версия Win32: 0.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCParser.DLL
----------------------------------------
SyntaxTreeConverters
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTreeConverters.DLL
----------------------------------------
OptimizerConversion
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/OptimizerConversion.DLL
----------------------------------------
CompilerController
Версия сборки: 1.0.7100.35864
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CompilerController.DLL
----------------------------------------
mscorlib.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.6.1055.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
HelpBuilder
Версия сборки: 1.0.7100.35863
Версия Win32: 1.0.7100.35863
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/HelpBuilder.DLL
----------------------------------------
System.resources
Версия сборки: 4.0.0.0
Версия Win32: 4.6.1055.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.resources.dll
----------------------------------------
InternalErrorReport
Версия сборки: 1.0.7100.35864
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/InternalErrorReport.DLL
----------------------------------------
LanguageConverter
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/LanguageConverter.DLL
----------------------------------------
Microsoft.Scripting
Версия сборки: 1.1.0.20
Версия Win32: 1.1.0.21
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Microsoft.Scripting.DLL
----------------------------------------
PT4Provider
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PT4Provider.DLL
----------------------------------------
PT4Tools
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PT4Tools.DLL
----------------------------------------
SemanticTreeVisualisator
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SemanticTreeVisualisator.DLL
----------------------------------------
SharpDisasm
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SharpDisasm.DLL
----------------------------------------
SyntaxTreeVisualisator
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTreeVisualisator.DLL
----------------------------------------
SyntaxVisitors
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxVisitors.DLL
----------------------------------------
TestPlugin
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/TestPlugin.DLL
----------------------------------------
VBNETParser
Версия сборки: 1.0.7100.35864
Версия Win32: 1.0.7100.35864
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/VBNETParser.DLL
----------------------------------------
YieldHelpers
Версия сборки: 1.0.0.0
Версия Win32: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/YieldHelpers.DLL
----------------------------------------
System.Security
Версия сборки: 4.0.0.0
Версия Win32: 4.7.2650.0 built by: NET471REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Security/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Security.dll
----------------------------------------
Program1
Версия сборки: 1.0.0.0
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
Версия сборки: 1.0.0.0
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
Версия сборки: 1.0.0.0
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
Версия сборки: 1.0.0.0
Версия Win32: 3.5.0.2095
CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.
Например:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.
Открыл release версию PascalABC.Net и написал код:
begin
var a: integer;
read(a);
end.
Нажимаем кнопку ‘шаг с входом в подпрограмму’ и продолжаем нажимать, пока в модуле __RedirectIOMode мы не получим предложение на ввод переменной, жмем до 59 строки модуля ‘шаг с входом в подпрограмму’.
Вводим ‘3‘ (НА ENTER НЕ НАЖИМАЕМ) и жмем ‘шаг с входом в подпрограмму’, пока не завершится программа, жмем на кнопку ‘завершить’
Снова жмем ‘шаг с входом в подпрограмму’ (из системного модуля не выходим) до строки из пункта 2 – 59 и снова вводим ‘3’.
Необработанное исключение получено, также можем нажать на ‘продолжить’ и ввести что – нибудь, например, пробел тоже работает, как ввод числа.
Снова выводит исключение.
PascalABCCompiler.Core v3.5.0.2110 (16.06.2019), debug version
Runtime version: 4.0.30319.42000
OS version: Microsoft Windows NT 6.1.7601 Service Pack 1
Processor count: 4
WorkingSet: 137524 kb
А, понятно. Ну, в режиме дебага надо запретить дебажить системные модули в части, связанной со вводом. В Студии так и сделано - у нас к сожалению всё открыто. Правильно ли я понимаю, что если нажимать Шаг без входа в подпрограмму, то всё работает?