<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://novawiki.app/index.php?action=history&amp;feed=atom&amp;title=%EC%97%B0%EC%82%B0%EC%9E%90_%EC%98%A4%EB%B2%84%EB%A1%9C%EB%94%A9</id>
	<title>연산자 오버로딩 - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://novawiki.app/index.php?action=history&amp;feed=atom&amp;title=%EC%97%B0%EC%82%B0%EC%9E%90_%EC%98%A4%EB%B2%84%EB%A1%9C%EB%94%A9"/>
	<link rel="alternate" type="text/html" href="https://novawiki.app/index.php?title=%EC%97%B0%EC%82%B0%EC%9E%90_%EC%98%A4%EB%B2%84%EB%A1%9C%EB%94%A9&amp;action=history"/>
	<updated>2026-04-16T07:53:38Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://novawiki.app/index.php?title=%EC%97%B0%EC%82%B0%EC%9E%90_%EC%98%A4%EB%B2%84%EB%A1%9C%EB%94%A9&amp;diff=75650&amp;oldid=prev</id>
		<title>NovaAdmin: DCWiki 복구: 최신본 이식</title>
		<link rel="alternate" type="text/html" href="https://novawiki.app/index.php?title=%EC%97%B0%EC%82%B0%EC%9E%90_%EC%98%A4%EB%B2%84%EB%A1%9C%EB%94%A9&amp;diff=75650&amp;oldid=prev"/>
		<updated>2026-01-08T09:20:16Z</updated>

		<summary type="html">&lt;p&gt;DCWiki 복구: 최신본 이식&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{틀:공대생}}&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
프로그래밍 언어에서, 기본 연산자를 확장해서 사용할 수 있는 기능을 말한다.&lt;br /&gt;
&lt;br /&gt;
C++, C#과 같은 객체지향성 언어들에게 제공된다.&lt;br /&gt;
병신언어 [[자바]]는 이거 없다.&lt;br /&gt;
&lt;br /&gt;
연산자 오버로딩을 사용하면 +나 -, [] 같은 대부분의 연산자를 사용자 정의 타입&lt;br /&gt;
&lt;br /&gt;
결과적으로 생산성, 가독성을 대폭 증가시킬 수 있다.&lt;br /&gt;
&lt;br /&gt;
== 사용법 (C++) ==&lt;br /&gt;
키워드 operator를 사용한다.&lt;br /&gt;
&lt;br /&gt;
기본적인 구조는 메소드와 동일하고, 메소드나 전역함수로 선언이 가능하다.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
class Type&lt;br /&gt;
{&lt;br /&gt;
ㅤint value;&lt;br /&gt;
&lt;br /&gt;
public:&lt;br /&gt;
ㅤvoid SetValue(int _value)&lt;br /&gt;
ㅤ{&lt;br /&gt;
ㅤㅤvalue=_value;&lt;br /&gt;
ㅤ}&lt;br /&gt;
ㅤint GetValue() const&lt;br /&gt;
ㅤ{&lt;br /&gt;
ㅤㅤreturn value;&lt;br /&gt;
ㅤ}&lt;br /&gt;
&lt;br /&gt;
ㅤType operator+(Type right) const&lt;br /&gt;
ㅤ{&lt;br /&gt;
ㅤㅤType temp;&lt;br /&gt;
ㅤㅤtemp.SetValue(value+right.GetValue());&lt;br /&gt;
ㅤㅤreturn temp;&lt;br /&gt;
ㅤ}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
이와 같은 타입을 정의하고&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
Type obj().SetValue(2); &lt;br /&gt;
Type obj2().SetValue(5);&lt;br /&gt;
cout&amp;lt;&amp;lt; (obj+obj2).GetValue();&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
이렇게 사용을 하면 정상적으로 7이란 값이 출력이 된다&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(obj+obj2)&lt;br /&gt;
&lt;br /&gt;
이 코드는 자동적으로 이렇게 변환된다.&lt;br /&gt;
&lt;br /&gt;
(obj.operator+(obj2))&lt;br /&gt;
&lt;br /&gt;
그리고 보통 함수와 같은 원리로 수행된다.&lt;/div&gt;</summary>
		<author><name>NovaAdmin</name></author>
	</entry>
</feed>