&& операция в ActionScript - PullRequest
0 голосов
/ 15 июня 2010

В следующем коде строка после оператора if запускается, даже когда «BITMAP» равен нулю. Почему это?

public function get BitmapHeight ()
      {
        if (_bitmapHeight == 0 && BITMAP != null)
          _bitmapHeight = BITMAP.bitmapData.height;
        return _bitmapHeight;
      }

Ответы [ 2 ]

4 голосов
/ 15 июня 2010

Эта строка кода никогда не должна выполняться, если BITMAP имеет значение null.

Попробуйте это:

public function get BitmapHeight (){
    if (_bitmapHeight == 0 && BITMAP != null){
        trace("called with null");
        _bitmapHeight = BITMAP.bitmapData.height;
    }
    return _bitmapHeight;
}

Отслеживается ли когда-либо с 'вызванным с нулем'?

0 голосов
/ 15 июня 2010

Я делаю длинный выстрел здесь, но поскольку у вас нет трассировки, я думаю, что вы можете судить, выполняется ли строка после кодирования или нет, переходя в эту строку с помощью отладчика. ...

Если это так, возможно, исходный код, который вы видите, не совсем тот код, который был фактически скомпилирован в SWF. Если вы, например, удалите одну строку в этом файле (может быть пустой строкой) после начала отладки, номера строк, сохраненные в swf, не будут совпадать с номерами строк в файле исходного кода, который вы видите. Это иногда случается со мной и дает мне один из тех моментов WTF ... пока я не пойму, что сделал это снова, поэтому я просто перезапускаю сеанс отладки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...