Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Что даёт void? (http://www.flasher.ru/forum/showthread.php?t=127390)

twix1124 13.07.2009 01:11

Что даёт void?
 
В чём разница между
Код AS3:

function newGame(e:MouseEvent):void

и
Код AS3:

function newGame(e:MouseEvent)

?

VVall 13.07.2009 01:15

http://www.smithmediafusion.com/blog/?p=380

switcher! 13.07.2009 01:48

если по русски: void означает, что функция не возвращает значения.
эта запись особенно нужна для того, чтобы ненароком не попытаться присвоить значение этой функции (например, по:
Код AS3:

function test(param:Number):void
{
var peremennaya:Numder = param;
return peremennaya; )
}

Тогда компилятор в строгом режиме выдаст несоответствие типов, мол void не может возвращать.

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

twix1124 13.07.2009 02:38

Теперь спасибо =)

GydruS 13.07.2009 06:08

Цитата:

Сообщение от switcher! (Сообщение 835002)
...эта запись особенно нужна для того, чтобы ненароком не попытаться присвоить значение этой функции (например, по:
Код AS3:

function test(param:Number):void
{
var peremennaya:Numder = param;
return peremennaya; )
}

Тогда компилятор в строгом режиме выдаст несоответствие типов, мол void не может возвращать.

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

Не совсем. Если написать
Код AS3:

function test():void { return void; }

то тоже прокатит =)

void - это просто заимствование из синтаксиса языка си. Чтобы сишникам было комфортнее. Так же как и false и true для паскалистов.
В си если ф-я не возвращает значения, то она обязательно возвращает void! без этого никак. Ну, философия у того языка такая.. А в паскале для этого вместо слова function используется слово procedure.

iNils 13.07.2009 10:49

Ну, почему всем сишники мерещуться? switcher! абсолютно верно описал назначение void, а то что можно вернуть "функция ни чего не возвращает" не важно. Это как ноль умножить на что угодно.


Часовой пояс GMT +4, время: 12:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.