>  기사  >  백엔드 개발  >  C++에서 객체는 어떻게 매개변수로 전달되고 반환됩니까? (코드 예)

C++에서 객체는 어떻게 매개변수로 전달되고 반환됩니까? (코드 예)

青灯夜游
青灯夜游원래의
2019-03-14 15:23:425388검색

C++에서는 다른 변수를 전달하고 반환하는 것처럼 클래스의 객체를 매개변수로 전달하고 함수에서 이를 반환할 수 있습니다. 특별한 키워드나 헤더 파일이 필요하지 않습니다. 다음 기사를 통해 이에 대해 안내해 드리겠습니다. 도움이 되기를 바랍니다.

C++에서 객체는 어떻게 매개변수로 전달되고 반환됩니까? (코드 예)

1. 객체를 매개변수로 전달

객체를 매개변수로 전달하려면 객체 이름을 매개변수로 작성하고 동시에 함수를 호출하는 방법도 같습니다. 다른 변수의 경우.

기본 구문:

函数名(对象名);

예:

#include <bits/stdc++.h> 
using namespace std; 
  
class Example { 
public: 
    int a; 
  
    // 此函数将对象作为参数
    void add(Example E) 
    { 
        a = a + E.a; 
    } 
}; 
int main() 
{ 
  
    // 创建对象
    Example E1, E2; 
  
    // 两个对象的值都已初始化
    E1.a = 50; 
    E2.a = 100; 
  
    cout << "初始值 \n"; 
    cout << "对象1的值: " << E1.a 
         << "\n对象2的值: " << E2.a 
         << "\n\n"; 
  
    // 将对象作为参数传递给函数add()
    E2.add(E1); 
  
    // 传递给函数add()后
    cout << "新值 \n"; 
    cout << "对象1的值: " << E1.a 
         << "\n对象2的值:" << E2.a 
         << "\n\n"; 
  
    return 0; 
}

출력:

初始值
对象1的值:50
对象2的值:100


新值
对象1的值:50
对象2的值:150

설명: 이 예에는 정수 변수 "a"가 있는 클래스와 개체를 매개 변수로 사용하는 "add" 함수가 있습니다. add() 함수는 객체와 다른 객체를 매개변수로 사용하여 호출됩니다. 함수 내에서 매개변수 객체의 정수 값은 호출하는 'add' 함수의 정수 값에 더해집니다. 이 방법에서는 객체를 매개변수로 전달하고 변경할 수 있습니다.

참고: add 함수는 반환 유형이 void이므로 어떤 값도 반환하지 않습니다.

2. 객체를 매개변수로 반환

기본 구문:

object = return object_name;

예: add 함수는 "example" 유형(예: 클래스 이름)의 객체를 반환하고 이 객체의 값은 다음 위치에 저장됩니다. E3.

#include <bits/stdc++.h> 
using namespace std; 
  
class Example { 
public: 
    int a; 
  
    // 此函数将以对象为参数并返回对象
    Example add(Example Ea, Example Eb) 
    { 
        Example Ec; 
        Ec.a = Ec.a + Ea.a + Eb.a; 
  
        // 返回对象
        return Ec; 
    } 
}; 
int main() 
{ 
    Example E1, E2, E3; 
  
    // 两个对象的值都已初始化
    E1.a = 50; 
    E2.a = 100; 
    E3.a = 0; 
  
    cout << "初始值 \n"; 
    cout << "对象1的值: " << E1.a 
         << " \n对象2的值: " << E2.a 
         << "\n对象3的值: " << E3.a 
         << "\n\n"; 
  
    //将对象作为参数传递给函数add()。
    E3 = E3.add(E1, E2); 
  
    // 将对象作为参数传递后更改的值
    cout << "新值 \n"; 
    cout << "对象1的值: " << E1.a 
         << " \n对象2的值: " << E2.a 
         << " \n对象3的值: " << E3.a 
         << "\n"; 
  
    return 0; 
}

출력:

初始值
对象1的值:50
对象2的值:100
对象3的值:0


新值
对象1的值:50
对象2的值:100
对象3的值:200

설명: 이 예에서는 객체를 전달하고 반환하는 방법이라는 두 가지 측면을 볼 수 있습니다. 객체 E3이 add 함수를 호출할 때 두 개의 다른 객체 E1과 E2를 매개변수로 전달합니다. 함수 내부에는 세 변수 모두의 합을 계산하여 E3에 반환하는 또 다른 개체가 선언됩니다.

추천 동영상 튜토리얼: "C++ Tutorial"

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 C++에서 객체는 어떻게 매개변수로 전달되고 반환됩니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.