मेरी कक्षा में एक तत्व जोड़ते समय आकार बदल नहीं रहा (सी ++)

मेरे होमवर्क में मैं अपने कस्टम गतिशील सरणी के आकार को बदलने में असमर्थ हूं और मुझे नहीं पता कि क्यों। मेरा कोड यहाँ है:

    void StudentList::addStudent(const Student s)
{
        Student* temp;
        temp = students;
        students = new Student[stCount + 1];
        for(int i = 0; i < stCount; i++)
        {
            students[i] = temp[i];
        }
        students[stCount] = s;
        stCount++;
        delete[] temp;
        temp = NULL;
}

 void Course::addStudent(const Student& s)
{
    //here students is a StudentList object
    students.addStudent(s);
 }

//Here I add the student in the system using subclasses
void StudentReviewSystem::addStudent(const int cId, const int id, const string n)
{
    Student s(n, id);
    courses.getCourse(cId).addStudent(s);
    s.addId(cId);
}

अंत में जब मैं एक विशिष्ट पाठ्यक्रम में छात्र गणना प्रदर्शित करने का प्रयास करता हूं तो यह शून्य रहता है, हालांकि यदि मैं कोर्स क्लास विधि के साथ सीधे कोर्स ऑब्जेक्ट बनाता हूं, और इसमें एक छात्र जोड़ता हूं, तो आकार ठीक से बदल जाता है। मुझे लगता है कि मेरी त्रुटि StudentReviewSystem क्लास 'addStudent विधि में है। क्या आप मेरी मदद कर सकते हैं?

धन्यवाद!

0
हां, जब भी मैं एक नया छात्र वस्तु जोड़ता हूं stcount 1 से बढ़ता है
जोड़ा लेखक dogadikbayir, स्रोत
getCourse कैसे परिभाषित किया गया है? आपको संदर्भ बनाम मानों के बारे में सोचना होगा।
जोड़ा लेखक Alan Stokes, स्रोत
StudentReviewSystem :: AddStudent चीजों के दिखने से स्थानीय का उपयोग कर रहा है
जोड़ा लेखक doctorlove, स्रोत
एक विशिष्ट पाठ्यक्रम में छात्र गणना प्रदर्शित करने के लिए क्या कार्य?
जोड़ा लेखक MeNa, स्रोत

कोई जवाब नहीं है

0