Сортировка TStringList: ошибка в Delphi и Android [дубликат]

В Java, когда вы иногда запускаете JVM из командной строки с помощью исполняемого файла java и пытаетесь запустить программу из файла класса с открытым статическим void main (PSVM), вы можете столкнуться с ошибкой ниже, хотя classpath для JVM является точной и файл класса присутствует в пути к классам:

Error: main class not found or loaded

Это происходит, если файл класса с PSVM не может быть загружен. Одна из возможных причин этого заключается в том, что класс может реализовывать интерфейс или расширять другой класс, который не находится в пути к классам. Обычно, если класс не находится в пути к классам, то выдаваемая ошибка указывает как таковой. Но, если используемый класс расширен или реализован, java не может загрузить сам класс.

Ссылка: https://www.computingnotes.net/java/error-main-class -на-нашли или загружено /

16
задан Arioch 'The 22 July 2013 в 15:28
поделиться

1 ответ

Этот трюк никогда официально не поддерживался языком, и вы ушли с ним на сегодняшний день из-за особенностей реализации 32-битного компилятора. Документация понятна:

Вложенные процедуры и функции (процедуры, объявленные в других подпрограммах) не могут использоваться в качестве процедурных значений.

] Если я правильно помню, дополнительный, скрытый параметр передается вложенным функциям с указателем на охватывающий стек стека. Это исключено в 32-битном коде, если в окружение нет ссылки. В 64-битном коде дополнительный параметр всегда передается.

Конечно, большая часть проблемы заключается в том, что в модуле Windows используются нетипизированные типы процедур для его параметров обратного вызова. Если были введены типизированные процедуры, компилятор мог отклонить ваш код. На самом деле я рассматриваю это как оправдание убеждения, что трюк, который вы использовали, никогда не был законным. С типизированными обратными вызовами вложенную процедуру никогда нельзя использовать даже в 32-битном компиляторе.

В любом случае, нижняя строка заключается в том, что вы не можете передать вложенную функцию как параметр другой функции в 64-битном компиляторе.

20
ответ дан David Heffernan 24 August 2018 в 06:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: