Προς το περιεχόμενο
  • 0
Συνδεθείτε  
geo1st487

Προβλημα με κωδικα σε C#

Ερώτηση

Βρηκα τον παρακατω κωδικα απο ενα site ο οποιος δεν παιζει σε C# 2010

Student[] Students = {
    new Student{ Name = "Bob", Gpa = 3.5 },
    new Student{ Name = "Sue", Gpa = 4.0 },
    new Student{ Name = "Joe", Gpa = 1.9 }
};

και αναγκαστηκα και τον αλλαξα οπως φαινεται παρακατω και παιζει μια χαρα

            var Students = new[] {  new { Name = "Bob", Gpa = 3.5 },
                                    new { Name = "Sue", Gpa = 4.0 },
                                    new { Name = "Joe", Gpa = 1.9 }
                                 };

Αυτο που θελω να μαθω ειναι αν ο πρωτος κωδικας ειναι λαθος ή αν παιζει σωστα σε C# 2012. Αν καποιος εχει C# 2012 ας δοκιμασει να μου πει.

 

Ευχαριστω

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

4 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

  • 0

Εμένα παίζουν και οι δύο σε 2010. 

Και πιστεύω θα δουλέψει και σε 2012.

 

Μήπως περνάς πινακες ως arguments σε συναρτηση? 

        class Student
        {
            public int a { get; set; }
            public int b { get; set; }

            public void test()
            {
                var std1 = new[] { new Student { b = 1, a = 2 }, new Student(), new Student { b = 7 } };
                Student[] std2 = { new Student(), new Student { a = 5, b = 6 }, new Student { b = 9 } };
            }
        }

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Στην πρώτη περίπτωση δημιουργείς ένα array που κάθε στοιχείο είναι τύπου Student.

Στην δεύτερη περίπτωση δημιουργείς ένα array που κάθε στοιχείο είναι τύπου Anonymous Type.

Στην πρώτη περίπτωση να υποθέσω ότι δεν έχεις ορίσει την class Student για να σου βγάζει σφάλμα;

  • Like 2

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Στην Student ειναι η συναρτηση test()

 

Και αυτό παιζει

 var std3 = new[] { new { b = 1, a = 2 }, new { b = 1, a = 2 } };       

Αυτο ΔΕΝ παιζει

 Student[] std4 = { new { a = 5, b = 6 }, new { b = 9, a = 8 } };

Παντως δεν ειναι θεμα μεταξυ 2010-2012 

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Παιδια εχετε δικιο. Στον πρωτο κωδικα κανονικα θα πρεπει να υπαρχει μια κλαση με ονομα Student με πεδια Name και Gpa.

Απλως το site που βρηκα τον κωδικα δεν ειχε ορισει την κλαση Student και γιαυτο δεν ετρεχε. Οποτε ολα OK thanks!

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε έναν λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι εύκολο!

Εγγραφείτε για έναν νέο λογαριασμό

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
Συνδεθείτε  
×
×
  • Δημιουργία νέου...

Χρήσιμες πληροφορίες

Με την περιήγησή σας στο insomnia.gr, αποδέχεστε τη χρήση cookies που ενισχύουν σημαντικά την εμπειρία χρήσης.