Значения, возвращаемые методом Main() 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Значения, возвращаемые методом Main()



Метод Main может возвращать значение типа void:

static void Main() { //... }

Он также может возвращать значение типа int:

static int Main() { //... return 0; }

Если значение, возвращаемое методом Main использоваться не будет, то указание в качестве возвращаемого типа void несколько упрощает код. Однако возврат целого значения позволяет программе передавать информацию о своем состоянии другим программам и сценариям, которые вызывают исполняемые файл. Ниже показан пример использования значения, возвращаемого методом Main.

 


Example

In this example a batch file is used to execute a program and test the return value of the Main function. When a program is executed in Windows, any value returned from the Main function is stored in an environment variable called ERRORLEVEL. By inspecting the ERRORLEVEL variable, batch files can therefore determine the outcome of execution. Traditionally, a return value of zero indicates successful execution. Below is a very simple program that returns zero from the Main function.

class MainReturnValTest { static int Main() { //... return 0; } }

Next, a batch file is used to invoke the executable resulting from the previous code example. Because the code returns zero, the batch file will report success, but if the previous code is changed to return a non-zero value, and is then re-compiled, subsequent execution of the batch file will indicate failure.

@echo off MainReturnValueTest @if "%ERRORLEVEL%" == "0" goto good :fail echo Execution Failed echo return value = %ERRORLEVEL% goto end :good echo Execution Succeded echo return value = %ERRORLEVEL% goto end :end

Sample Output

Execution Succeded

return value = 0


Пример

В этом примере с помощью пакетного файла запускается программа, после чего проверяется значение, возвращаемое функцией Main. При запуске программы в Windows значение, возвращаемое функцией Main, сохраняется в переменной среды, которая называется ERRORLEVEL. Проверка значения переменной ERRORLEVEL дает пакетному файлу возможность определить результат выполнения программы. В большинстве случаев на успешное выполнение указывает нулевое значение. Ниже показана простая программа, функция Main в которой возвращает ноль.

class MainReturnValTest { static int Main() { //... return 0; } }

После этого с помощью пакетного файла будет запущен исполняемый файл, созданный на основе приведенного выше примера кода. Поскольку в результате выполнения кода будет возвращено значение 0, пакетный файл сообщит об успешном запуске программы. Если же изменить код таким образом, чтобы возвращалось значение, отличное от нуля, а затем повторно скомпилировать его, при выполнении пакетного файла будет отображено сообщение о сбое.

ß--

Пример результатов выполнения

Execution Succeded

return value = 0

 


Types

C# is a strongly typed language; therefore every variable and object must have a declared type.

Data Types Overview

A type can be described as being either:

· A built-in numeric type, such as an int or char, or

· A user-defined type, such as a class or interface.

· An anonymous type, which consists of a set of public properties encapsulated in a nameless reference type.

· Types can also be defined as being either:

· Value Types (C# Reference), which store values. These include the primitive numeric types, enums and structs, and also nullable versions of these types.

· Reference Types (C# Reference), which store references to the actual data. These include classes, interfaces, arrays and delegates.

 


Типы

C# — это строго типизированный язык, поэтому каждая переменная и каждый объект должны иметь объявленный тип.



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 135; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.8.247 (0.005 с.)