Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   VerifyError: Error #1023: Переполнение стека. (http://www.flasher.ru/forum/showthread.php?t=211418)

бакуард 28.08.2015 11:59

VerifyError: Error #1023: Переполнение стека.
 
Доброго времени суток.

Есть пять классов: Main, A, B, C, D.

Код AS3:

package {
 
        import flash.display.Sprite;
        import anotherClassPG.*;
 
        public class Main extends Sprite{
 
                public function Main(){
                        var a:A = new A();
                        a.fA1();
 
                        var b:B = new B();
                        b.fB1();
 
                        var c:C = new C();
                        c.fC1();
 
                        var d:D = new D();
                        d.fD1();
                }
        }
}
 
package anotherClassPG{
 
        public class A{
 
                public function A(){
                        trace("выполнен метод-конструктор класса А");
                }
 
                public function fA1(){
                        trace("выполнен метод fA1");
                }
        }
}
 
package anotherClassPG{
 
        public class B extends A{
 
                public function B(){
                        trace("выполнен метод-конструктор класса B");
                }
 
                public function fB1(){
                        trace("выполнен метод fB1");
                }
        }
}
 
package anotherClassPG{
 
        public class C extends B{
 
                public function C(){
                        trace("выполнен метод-конструктор класса С");
                }
 
                public function fC1(){
                        trace("выполнен метод fC1");
                }
        }
}
 
package anotherClassPG{
 
        public class D extends A{
 
                public function D(){
                        trace("выполнен метод-конструктор класса D");
                }
 
                public function fD1(){
                        trace("выполнен метод fD1");
                }
        }
}

После того как я добавил класс D появилась ошибка: VerifyError: Error #1023: Переполнение стека.

Isfet 28.08.2015 13:24

у меня все нормально работает, эта ошибка обычно вылазит когда программа в бесконечной рекурсии, и от трейсов переполняется стек вывода.

бакуард 28.08.2015 14:24

Может я ошибаюсь, но бесконечной рекурсии я здесь не вижу.

Isfet 28.08.2015 14:51

значит это неполный код, у меня ваш код работает

бакуард 28.08.2015 15:19

Это полный код.

neonoviiwolf 28.08.2015 16:17

не знаю, что за ерунда с наследованием у вас практикуется, но
Код AS3:

package anotherClassPG{
 
        public class D extends A{

наверно стоит сменить А на С?


Добавлено через 9 минут
хотя у меня всё работает и так

бакуард 28.08.2015 17:40

А что такого в том, что я наследую класс D от A, а не C ?
Насколько я знаю от любого класса можно унаследовать не только один-единственный класс.

Добавлено через 45 секунд
Может быть это какой-то баг ?

gloomyBrain 28.08.2015 18:33

Цитата:

После того как я добавил класс D появилась ошибка: VerifyError: Error #1023: Переполнение стека.
На какой строке возникает ошибка?

бакуард 28.08.2015 18:55

Ошибка возникает здесь:
Код AS3:

d.fD1();

Это класс Main.

neonoviiwolf 29.08.2015 00:21

мож глюк IDE, на чём пишите?


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

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