MATLAB句柄类和实体类

函数的参数传递

  • MATLAB 中,普通函数的参数传递都是实传递,即函数内对参数的任何修改都不会影响函数外原有的值。
  • 很明显,这样的坏处就是无法通过函数引用传参对传入数据进行处理,如果非要得到处理后的参数,必须将其设置为返回值。
  • 如果大量数据进行这种处理,就会导致运算速度很慢。

Value类和Handle类

  • Value 类是数值类,数值类不能在非构造函数中修改类的属性,如果要修改属性必须返回一个新的类,原来类依旧不变。
  • Value 类复制(nValue = mValue)会复制新的数据给 nValue ,两个类拥有两份独立数据
  • Handle 类在定义类时继承 handle 即可,Handle 类可以在非构造函数中修改属性。
  • Handle 类复制(nHandle = mHandle)只是复制指针,相当于引用,即 nHandle 和 mHandle 指向相同的数据,相当于引用。

Handle类作为默认值

  • 如果一个类的默认值是一个 Handle 类,那么该类的对象都将共享这个属性
classdef Recipe < handle
	properties
		ingredient
	end
end

classdef NoodleStore < handle
	properties
		recipe = Recipe
	end
end
  • NoodleStore 创建对象的 recipe 是相互关联的,所有对象都拥有同一个指向该对象的Handle
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值