Avatar billede Slettet bruger
25. august 2006 - 16:14 Der er 3 kommentarer og
1 løsning

Klassedefinition - Hvorfor virker dette ikke?!

Hej eksperter!

Hvorfor virker denne klassedefinition ikke?

--- Snake.as ---

class Snake {
   
    private var x:Number;
    private var y:Number;
    private var d:Number;
   
    function Snake(var sX:Number, var sY:Number, var sD:Number) {
        x = sX;
        y = sY;
        d = sD;
    }
   
    function getX() {
        return x;
    }
    function getY() {
        return y;
    }
    function setP(var nX:Number, var nY:Number) {
        x = nX;
        y = nY;
    }
   
    function getD() {
        return d;
    }
    function setDir(var nD:Number) {
        return d = nD;
    }
}

--- Output ---

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 7: Parameter name expected
        function Snake(var sX:Number, var sY:Number, var sD:Number) {

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 19: Parameter name expected
        function setP(var nX:Number, var nY:Number) {

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 27: Parameter name expected
        function setDir(var nD:Number) {

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 7: This statement is not permitted in a class definition.
        function Snake(var sX:Number, var sY:Number, var sD:Number) {

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 19: This statement is not permitted in a class definition.
        function setP(var nX:Number, var nY:Number) {

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 28: This statement is not permitted in a class definition.
            return d = nD;

**Error** C:\Documents and Settings\Toke Skovbo Krainert\Dokumenter\[PRIVAT]\Flash\Snake War\Snake.as: Line 30: ActionScript 2.0 class scripts may only define class or interface constructs.
    }

Total ActionScript Errors: 7     Reported Errors: 7

---

???
Avatar billede thulstrup Nybegynder
25. august 2006 - 16:18 #1
Fjern var foran parametrene i dine methods

Så:
function Snake(var sX:Number, var sY:Number, var sD:Number) {

Bliver til:
function Snake(sX:Number, sY:Number, sD:Number) {

osv.
Avatar billede Slettet bruger
25. august 2006 - 18:23 #2
Hm...
Har ellers hørt at man skal gøre det modsatte...
Prøver lige.
Avatar billede Slettet bruger
25. august 2006 - 18:25 #3
Hah! Du havde ret!
Bare smid et svar, compileren finden ingen fejl nu.
Avatar billede thulstrup Nybegynder
25. august 2006 - 18:37 #4
ok :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester