Это может помочь Вам:
http://www.codeplex.com/FileDirectoryPath
Это NDepend. Помощники. FilePathDirectory, которые имеют "API проверки достоверности пути" среди другого, который может быть полезным.
Это определяется пользователем функция, которая необходима для выполнения программы. Когда вы запускаете свою программу на скомпилированном языке, выполняется функция main
. Например, в Java, если у вас есть функция сигнатуры public static void main (String ... args)
в классе, тогда этот класс может быть выполнен, поскольку JVM выполнит содержимое этого main
метод.
Пример на Java:
public class Test {
public static void main(String ... args) {
System.out.println("Hello World");
}
}
...
javac Test.java
...
java Test
Результаты в "
Это обязательная функция, определяемая пользователем (точка входа для исполняемых файлов) ...
Цитата из стандарта C (выделено мной):
5.1.2.1 Автономная среда
- В автономной среде (в какое выполнение программы C может занять место без какой-либо выгоды операционная система), имя и тип функции, вызываемой в запуск программы определяется реализацией . любой библиотечные помещения доступны для автономная программа, кроме минимальный набор, требуемый п. 4, определяются реализацией.
main ()
в автономной среде в значительной степени является определяемой пользователем функцией.
В C / C ++ это стандарт, поэтому он встроен и переработан.
Java, не уверен, нет опыта
C # - это часть класса, поэтому он определяется вы.
Все это определяется вами - вы говорите ему, что делать.
Это объявление встроено. Его определение предоставляется пользователем или в некоторых случаях предоставляется структурой приложения, которая имеет другую точку входа, или, в случае большинства структур GUI, управляемых событиями, нет единой определяемой пользователем точки входа.
В Java main (String [] args) по соглашению является точкой входа для приложений (для удобства программистов на C ++). Для апплетов или сервлетов вызов кода происходит иначе. Обратите внимание, что jar может содержать любую из этих точек входа или не содержать ни одной, и что каждый класс может содержать main, поэтому данный jar может быть вызван множеством различных способов в качестве приложения, если это необходимо.
Он не является «встроенным» ни в каком языке в том смысле, что не существует стандартного реализованного - для вас доступен main ().
Для C / C ++ / Java это - это функция со специальным свойством, а именно, функция, которая будет вызываться в начале вашей программы после завершения всех статических настроек. Например, путь выполнения всей программы C следующий:
Выполните некоторый код инициализации
Вызов main ()
Exit.
Таким образом, он имеет стандартное объявление (# параметров, переданных из командной строки + массив «строк» - однако язык реализует это - фактические аргументы из командной строки)
Это определяемая пользователем функция, которая вызывается библиотекой времени выполнения языка. Например, библиотека времени выполнения C будет получать аргументы командной строки, а иногда и переменные среды из операционной системы и передавать их в вашу функцию main ().
Среда выполнения на разных языках обычно выполняет одну и ту же операцию в той или иной форме и выдает ошибку, если функция, которую она пытается вызвать, не существует.
Я не уверен, что вы имеете в виду под «встроенным» и «определенным пользователем». Практически ни один язык не дает вашей пользовательской функции привилегию быть настоящей точкой входа в программу. C ++, любой язык .NET и Java имеют скрытые (встроенные) методы точки входа, которые, в свою очередь, вызывают ваш определяемый пользователем метод Main (или любой другой метод точки входа для этого языка - в .NET его можно назвать что угодно, хотя C # и VB.NET заставляют его называться Main).
Итак, да, практически в каждом языке есть концепция метода, который вызывается автоматически, и этот метод определяется пользователем и обычно является обязательным. Но практически каждый язык также имеет встроенный метод точки входа, который фактически устанавливает структуру и / или управление памятью для процесса перед вызовом вашей пользовательской функции «точки входа».