Dominant arguments and gpuArray
显示 更早的评论
"The dominant argument in a method's argument list determines which version of the method or function that the MATLAB runtime calls. Dominance is determined by the relative precedences of the classes of the arguments. In general, user-defined classes take precedence over built-in MATLAB classes"
However, I'm finding that gpuArrays take precedence over user-defined classes in the example below
classdef myclass
methods
function mldivide(x,y)
disp ' '
disp 'myclass mldivide method called'
disp ' '
end
end
end
>> which mldivide( gpuArray(1) , myclass)
mldivide is a built-in method % gpuArray method
Why does gpuArray, which is a built-in class, take precedence over my user-supplied class, contrary to the documentation?
采纳的回答
更多回答(1 个)
Alexander Jensen
2018-9-7
编辑:Alexander Jensen
2018-9-7
I believe that what ever computation run within the class will choose the function you've defined in your class, however, calling the function outside of your class requires you to write:
myclass.mldivide(x,y)
Also:
which myclass.mldivide
However I might be wrong :)
类别
在 帮助中心 和 File Exchange 中查找有关 Execution Speed 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!