Bagaimana cara meneruskan dan mengembalikan objek dari C ++ Functions?

Dalam tutorial ini, kita akan belajar melewatkan objek ke fungsi dan mengembalikan objek dari fungsi dalam pemrograman C ++.

Dalam pemrograman C ++, kita dapat mengirimkan objek ke suatu fungsi dengan cara yang sama seperti meneruskan argumen biasa.

Contoh 1: C ++ Meneruskan Objek ke Fungsi

 // C++ program to calculate the average marks of two students #include using namespace std; class Student ( public: double marks; // constructor to initialize marks Student(double m) ( marks = m; ) ); // function that has objects as parameters void calculateAverage(Student s1, Student s2) ( // calculate the average of marks of s1 and s2 double average = (s1.marks + s2.marks) / 2; cout << "Average Marks = " << average << endl; ) int main() ( Student student1(88.0), student2(56.0); // pass the objects as arguments calculateAverage(student1, student2); return 0; )

Keluaran

 Nilai Rata-rata = 72

Di sini, kami telah mengirimkan dua Studentobjek pelajar1 dan pelajar2 sebagai argumen ke calculateAverage()fungsi tersebut.

Meneruskan objek untuk berfungsi di C ++

Contoh 2: C ++ Mengembalikan Objek dari Fungsi

 #include using namespace std; class Student ( public: double marks1, marks2; ); // function that returns object of Student Student createStudent() ( Student student; // Initialize member variables of Student student.marks1 = 96.5; student.marks2 = 75.0; // print member variables of Student cout << "Marks 1 = " << student.marks1 << endl; cout << "Marks 2 = " << student.marks2 << endl; return student; ) int main() ( Student student1; // Call function student1 = createStudent(); return 0; )

Keluaran

 Marks1 = 96,5 Marks2 = 75
Kembalikan objek dari fungsi di C ++

Dalam program ini, kami telah membuat fungsi createStudent()yang mengembalikan objek Studentkelas.

Kami telah menelepon createStudent()dari main()metode tersebut.

 // Call function student1 = createStudent();

Di sini, kami menyimpan objek yang dikembalikan oleh createStudent()metode di student1.

Artikel yang menarik...