English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo articolo, imparerai a passare oggetti a funzioni in C++ e a restituire oggetti dalle funzioni.
Nel programming C++Gli oggetti possono essere passati alla funzione in modo simile alle strutture.
Il programma C++ aggiunge due numeri complessi passando gli oggetti alla funzione.
#include <iostream> using namespace std; class Complex { private: int real; int imag; public: Complex(): real(0), imag(0) { } void readData() { cout << "Inserisci rispettivamente il numero reale e l'immaginario:" << endl; cin >> real >> imag; {} void addComplexNumbers(Complex comp1, Complex comp2) { // real rappresenta i dati reali dell'oggetto c3, poiché è possibile chiamare questa funzione utilizzando il codice c3.add(c1, c2); real = comp1.real + comp2.real; // imag rappresenta i dati imag dell'oggetto c3, poiché è possibile chiamare questa funzione utilizzando il codice c3.add(c1, c2); imag = comp1.imag + comp2.imag; {} void displaySum() { cout << "Sum = " << real << "+" << imag << "i"; {} }; int main() { Complex c1, c2, c3; c1.readData(); c2.readData(); c3.addComplexNumbers(c1, c2); c3.displaySum(); return 0; {}
Risultato di output
Inserisci rispettivamente il numero reale e l'immaginario: 2 4 Inserisci rispettivamente il numero reale e l'immaginario: -3 4 Sum = -1 + 8i
Nel programming C++ Il modo in cui un oggetto può essere restituito dalla funzione è simile a quello degli strutture.
In questo programma, il somma del numero complesso (oggetto) sarà restituito alla funzione main() e visualizzato.
#include <iostream> using namespace std; class Complex { private: int real; int imag; public: Complex(): real(0), imag(0) { } void readData() { cout << "Inserisci rispettivamente il numero reale e l'immaginario:" << endl; cin >> real >> imag; {} Complex addComplexNumbers(Complex comp2) { Complex temp; // real rappresenta i dati reali dell'oggetto c3, poiché è possibile chiamare questa funzione utilizzando il codice c3.add(c1, c2); temp.real = real + comp2.real; // imag rappresenta i dati imag dell'oggetto c3, poiché è possibile chiamare questa funzione utilizzando il codice c3.add(c1, c2); temp.imag = imag + comp2.imag; return temp; {} void displayData() { cout << "Somma = " << re << "+" << im << "i"; {} }; int main() { Complex c1, c2, c3; c1.readData(); c2.readData(); c3 = c1.addComplexNumbers(c2); c3.displayData(); return 0; {}