capitan Δημοσ. 21 Ιανουαρίου 2009 Δημοσ. 21 Ιανουαρίου 2009 Καλησπέρα σε όλους. Μου βγάζει το εξής σφάλμα στα σημεία που έχω σημειώσει στον κώδικα παρακάτω: error: expected primary-expression before '{' token error: expected ';' before '{' token Αυτό που παραθέτω είναι ο constructor της Piece class και το pieceBoard ένας πινακας char [5][5], public μέλος της. >#include "Piece.h" Piece::Piece(char type){ switch (type){ case 'S': pieceBoard = [color="Red"] [b]{[/b][/color] {0,0,0,0,0}, {0,0,0,0,0}, {0,0,2,1,0}, {0,0,1,1,0}, {0,0,0,0,0} }; type='S'; break; case 'I': pieceBoard = [color="Red"][b]{[/b][/color] {0,0,0,0,0}, {0,0,0,0,0}, {0,1,2,1,1}, {0,0,0,0,0}, {0,0,0,0,0} }; type='I'; break; case 'N': pieceBoard = [color="Red"] [b]{[/b][/color] {0,0,0,0,0}, {0,0,2,1,0}, {0,1,1,0,0}, {0,0,0,0,0}, {0,0,0,0,0} }; type='N'; break; case 'L': pieceBoard = [color="Red"][b]{[/b][/color] {0,0,0,0,0}, {0,0,1,2,1}, {0,0,1,0,0}, {0,0,0,0,0}, {0,0,0,0,0} }; type='L'; break; case 'T': pieceBoard = [color="Red"][b]{[/b][/color] {0,0,0,0,0}, {0,0,1,0,0}, {0,1,2,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }; type='T'; break; } }
capitan Δημοσ. 22 Ιανουαρίου 2009 Μέλος Δημοσ. 22 Ιανουαρίου 2009 >case: ενα block Έβαλα αγκύλες στα case αλλά πάλι το ίδιο μου βγάζει
Evgenios1 Δημοσ. 22 Ιανουαρίου 2009 Δημοσ. 22 Ιανουαρίου 2009 >case 1: { function1(); function2(); } break; [b]defualt: {}break;[/b]
georgemarios Δημοσ. 23 Ιανουαρίου 2009 Δημοσ. 23 Ιανουαρίου 2009 δε μπορεις να δωσεις ετσι τιμες σε ενα array που ειναι ηδη δηλωμενο δηλαδη, μπορεις να πεις το παρακατω: > int pieceBoard[5][5] = [color=Red] [b]{[/b][/color] {0,0,0,0,0}, {0,0,0,0,0}, {0,0,2,1,0}, {0,0,1,1,0}, {0,0,0,0,0} }; αλλα οχι το παρακατω: > int pieceBoard[5][5]; pieceBoard = [color=Red][b]{[/b][/color] {0,0,0,0,0}, {0,0,0,0,0}, {0,0,2,1,0}, {0,0,1,1,0}, {0,0,0,0,0} }; Στη περιπτωση σου, σε καθε μπλοκ, θα πρεπει να βαζεις τα στοιχεια του pieceBoard ενα-ενα hint: επειδη βλεπω πως το pieceBoardεχει αρκετα μηδενικα, μηδενισε το ολο εξ αρχης με την memset (υποθετοντας πως το pieceBoard ειναι ενα int array 5 επι 5) > memset(pieceBoard,0,sizeof(int)*25); μετα θεσε τις λοιπες τιμες ξεχωριστα > pieceBoard[2][2]=2; pieceBoard[2][3]=1; ....
capitan Δημοσ. 23 Ιανουαρίου 2009 Μέλος Δημοσ. 23 Ιανουαρίου 2009 Ευχαριστώ παιδιά για τη βοήθεια, έκανα αυτό που είπες georgemarios και problem solved
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.