Как передать и вернуть объект из функций С++?
Как передать и вернуть объект из функций C++?
В этом руководстве мы научимся передавать объекты в функцию и возвращать объект из функции в программировании на C++.
В программировании на C++ мы можем передавать объекты функции так же, как и обычные аргументы.
Пример 1. Передача объектов C++ в функцию
// C++ program to calculate the average marks of two students
#include <iostream>
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;
}
Вывод
Average Marks = 72
Здесь мы прошли два Student
объекты студент1 и студент2 в качестве аргументов для calculateAverage()
функция.
Пример 2. C++ возвращает объект из функции
#include <iostream>
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;
}
Вывод
Marks1 = 96.5 Marks2 = 75<рисунок>
В этой программе мы создали функцию createStudent()
который возвращает объект Student
класс.
Мы вызвали createStudent()
из main()
метод.
// Call function
student1 = createStudent();
Здесь мы сохраняем объект, возвращенный createStudent()
метод в student1 .
Язык C
- 3 этапа 3D-печати и принципы их работы
- Класс и объект С#
- Классы и объекты С++
- Управление памятью C++:создание и удаление
- Публичное, защищенное и частное наследование C++
- Дружественные функции C++ и дружественные классы
- C Pass адреса и указатели
- Функции C++ с примерами программ
- Как защитить цепочки поставок от киберпреступлений, стихийных бедствий и прочего
- Дата и время С++