C/C++ 예제

시삽: 레드플러스 님 
게시판 이동:
 제목 : 22.1. 이항 연산자 오버로드(중복) : 연산자중복.cpp
글번호: 169
작성자: 레드플러스
작성일: 2005/08/21 오후 8:50:47
조회수: 4199
#include <iostream.h>

class A
{
public:
    int x;
    int y;
    A operator +(A xx);
    A operator *(A xx);
};

A A::operator +(A xx)
{
    A temp;
    temp.x = x + xx.x;
    temp.y = y + xx.y;
    return temp;
}

A A::operator *(A xx)
{
    A temp;
    temp.x = x * xx.x;
    temp.y = y * xx.y;
    return temp;
}

void main()
{
    //일반 데이터 타입의 연산
    int x = 3, y = 5;
    int z = x + y;
    //사용자 정의 데이터 타입(클래스)의 연산
    A ap;
    ap.x = 50, ap.y = 100;
    A bp;
    bp.x = 50, bp.y = 50;
    A dp;
    dp.x = 2, dp.y = 3;
    A cp = ap + bp * dp;//cp.x = ap.x + bp.x, cp.y = ap.y + bp.y;
    cout << "cp.x = " << cp.x << endl;
    cout << "cp.y = " << cp.y << endl;
}
 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트

(댓글을 남기려면 로그인이 필요합니다.)

관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 23. 예외 처리 - 레드플러스 2005-08-22 3954
  22. 연산자 중복 - 레드플러스 2005-08-21 4168
현재글 22.1. 이항 연산자 오버로드(중복) : 연산자중복.cpp - 레드플러스 2005-08-21 4199
  22.1.1. 이항 연산자 오버로드 간단 설명 : 연산자오버로드.cpp - 레드플러스 2007-01-25 3635
  22.2. 이항 연산자 오버로딩(중복) : 연산자중복_논리연산자.cpp - 레드플러스 2005-08-21 3800
  22.2.1. 이항 연산자 오버로딩(중복) : 논리연산자오버로딩.cpp - 레드플러스 2007-01-25 4272
  22.3. 단항 연산자 중복 : 연산자중복_단항연산자.cpp - 레드플러스 2005-08-21 3538
  22.3.1. 단항 연산자 중복 : 단항연산자오버로드.cpp - 레드플러스 2007-01-25 3554
다음글 21. 다중 상속과 인터페이스 - 레드플러스 2005-08-19 4164
 
손님 사용자 Anonymous (손님)
로그인 Home