作者weii (迷惑失道)
看板SFFamily
標題[轉錄]Re: [問題] 自訂新運算子
時間Thu Oct 23 20:39:07 2008
※ [本文轉錄自 C_and_CPP 看板]
作者: Fenikso (我是蜜蜂~) 看板: C_and_CPP
標題: Re: [問題] 自訂新運算子
時間: Thu Oct 23 17:20:29 2008
※ 引述《KonardWu (展翅高飛)》之銘言:
: 請問各位Cpp高手們:
: 如果我想要在Cpp中定義新的運算子, 有辦法做到嗎?
: 不限於超載舊有的+,-,*,/, etc.
: 有辦法自己定義新的運算子嗎?
: 比如我想定義 *# 為新的運算子:
: double a;
: double b;
: 定義: a*#b -> a/b + b/a
: 函數名稱可以自訂, 不知Cpp的運算子是否也能類似他的函數一樣自訂新的?
: 謝謝~
不行 但是你可以用現有的符號拼出新的運算子
像這樣
struct A {
double x;
} _;
A& operator^(double x, A& a) {
a.x = x;
return a;
}
double operator^(A& a, double y) {
return a.x/y + y/a.x;
}
int main() {
double x = 1, y = 2;
cout << (x ^_^ y) << endl;
}
不過這實用性=0....
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 216.239.45.4
→ MOONRAKER:不會啊,很有創意咧 XP 10/23 17:25
推 legendmtg:XDDDDD 10/23 17:33
推 ledia:很可愛 真的 XD 10/23 17:54
推 Keiichi:(x ^_^ y) 10/23 17:59
推 chrisdar: 有創意 我給擠霸昏 10/23 18:34
推 sunneo:XDDD 好可愛 10/23 18:40
推 wanwan2:真讚.. XD 10/23 18:48
推 a127a127:好可愛啊XDDD 10/23 19:33
推 guestid:創意滿分 10/23 19:46
推 s864372002:推一個XDD 10/23 20:00
推 elfkiller:推推推 10/23 20:14
--
「大哥!你....」
「你在以旁門左道的方法,逼自己的劍氣踰越極限﹖」
「廢話!」應雄反駁:
「什麼旁門左道﹖
能夠將最強的功力提昇至無法再上的強中之強,
才是必勝的最佳戰略!」
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.117.169