임시객체


임시 객체는 바로 생성되었다가 사라지는 객체를 말하는데, 몇가지 용도로 쓰인다.



다음 소스를 보자.

#include <iostream.h>   
  
class points   
{   
    public:   
        int x;   
        int y;   
  
    points(int x, int y)   
    {   
        this->x = x;   
        this->y = y;   
    }   
};   
  
void Draw(points P)   
{   
    //점을 찍는다.   
};   
  
int main()   
{   
    points P(2, 3);   
  
    Draw(P);                  //일반적인 객체사용한 경우
    Draw(points(2, 3));    //임시객체 사용한경우 
  
    //....   
    //....   
  
    return 0;   
}  



위의 Draw 함수는 점을 찍는 함수라고 가정하자.
인자로는 points의 객체를 받고 있다.
위의 경우에서 Draw 함수에서 점을 찍을 좌표만을 받기위해 객체를 생성해서 인자로 주는데 단지 좌표만을 위해서만 생성한 객체가 메인 함수가 끝날때까지 남아있게된다.
 
이럴때는 임시객체를 생성하는게 더 효율적일 수 있다.
함수를 호출할 때 두번째와 같이 사용하면 된다.
 

이 글을 공유하기

댓글

Designed by JB FACTORY