24小时热门版块排行榜    

查看: 1383  |  回复: 4

cw277

木虫 (正式写手)


[交流] matlab里面有没有运算符重载的?

比如说 ^    +   这种的~~~

[ Last edited by cw277 on 2012-10-11 at 19:15 ]
回复此楼

» 猜你喜欢

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★ ★ ★ ★ ★ ★ ★
小木虫: 金币+0.5, 给个红包,谢谢回帖
cw277: 金币+7, 谢谢,我其实想把^重载为异或 。 像c语言那样用~~~ 2012-10-11 20:39:40
jjdg: 金币+1, 感谢参与 2012-10-12 00:46:18
可以呀
比如说要建立一个类test,并为它重载加法
在matlab的搜索路径下建立一个文件夹,起名叫@test
(你可以去matlab的路径下查查,有好多文件夹前面带@的,都是类)
然后在@test文件夹下建立一个test.m这就相当于test类的构造函数
这儿假设给test类两个成员(简单起见)
只需:function p=test(x,y)
       p.x=x;
       p.y=y;
       p=class(p,'test');     %建立test类
然后在@test文件夹下建立一个plus.m,即为重载了加法
示例如下:
      function w=plus(p,q)
        w.x=p.x+q.x;
        w.y=p.y+q.y;
        w=class(w,'test');
重载其他运算苻也是如此
如果在@test文件夹下再建立一个private文件夹,那么在private里面的m文件,就将是此类的私有函数
2楼2012-10-11 19:22:39
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

cw277

木虫 (正式写手)


引用回帖:
2楼: Originally posted by libralibra at 2012-10-11 19:22:39
可以呀
比如说要建立一个类test,并为它重载加法
在matlab的搜索路径下建立一个文件夹,起名叫@test
(你可以去matlab的路径下查查,有好多文件夹前面带@的,都是类)
然后在@test文件夹下建立一个test.m这就相当 ...

这个用的时候是不是要定义两个test类对象啊? 还不是很会用~~
3楼2012-10-11 20:46:12
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

daisy143

至尊木虫 (著名写手)


4楼2012-10-12 14:14:27
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
cmwuyan5楼
2012-10-12 14:26  
相关版块跳转 我要订阅楼主 cw277 的主题更新
信息提示
请填处理意见