小编Art*_*ard的帖子

在matlab中传递和保存匿名函数

我想要一个函数(例如,拟合函数)来返回一个struct我可以保存并稍后使用的匿名函数(通常存储在a中).但是,传递@func往往会传递函数指针而不是函数本身.是一个inline函数来做到这一点的唯一途径?我想避免inline因为它非常慢.

如果这个问题不明确,这里有一个有问题的代码示例:我testFunc.m在一些文件中写了一个文件PATH

    %testFunc.m
    function myfunc = testFunc()
        myfunc = @(x) x.^2;
    end
Run Code Online (Sandbox Code Playgroud)

然后我将函数存储在一个struct.(我知道这应该是一个对象!)

    >> mystruct = struct;
    >> mystruct.func = testFunc()
    >> mstruct.x = [1 2 3];
    >> save('myfile.mat','mystruct')
    >> mystruct.func(mystruct.x)

    ans = 

         1     4     9
Run Code Online (Sandbox Code Playgroud)

如果我然后移动myfile.mattestFunc.m加载 myfile.mat,我无法加载旧的结构.相反,我得到错误:

    >> cd 'otherdir'
    >> load('../myfile.mat')

    Warning: Could not find appropriate function on path
    loading function handle PATH/testFunc.m>@(x)x.^2 
Run Code Online (Sandbox Code Playgroud)

我知道有问题因为,如果我检查一下 functions

    >> functions(mystruct.func)

    ans = 

         function: …
Run Code Online (Sandbox Code Playgroud)

matlab anonymous-function

9
推荐指数
1
解决办法
4766
查看次数

C#中的并行迭代?

有没有办法foreach在C#中对并行枚举进行样式迭代?对于标化的名单,我知道一个可以使用正for循环遍历指数范围内的int,但我真的很喜欢foreachfor了许多的原因.

如果它在C#2.0中有效,则可获得奖励积分

c# iteration foreach loops

7
推荐指数
2
解决办法
1万
查看次数

如何在JPanel及其子设备上设置工具提示?

我有一个包含JButton和其他一些东西的JPanel,我希望整个面板都有一个工具提示.当我在JPanel上调用setToolTipText时,工具提示只出现在JPanel中的空白区域.

有没有办法在JPanel上设置工具提示,以便它适用于JPanel及其子代,或者我是否仍然坚持在所有子代上调用setToolTipText?

java swing tooltip

6
推荐指数
1
解决办法
5348
查看次数

有没有更好的方法在MATLAB中声明一个空的,类型化的矩阵?

有没有办法在MATLAB中"声明"具有特定用户定义类型的变量?zeros()仅适用于内置数值类型.我提出的唯一解决方案是使用repmat()复制虚拟对象零次:

arr = repmat(myClass(), [1 0])
Run Code Online (Sandbox Code Playgroud)

如果不以这种方式声明变量,任何执行"arr(end + 1)= myClass()"的代码都必须包含默认空矩阵的特殊情况,该矩阵的类型为double.

我错过了一些更明智的事吗?

matlab types matrix

5
推荐指数
1
解决办法
2346
查看次数

计算MATLAB uicontrol所需的实际大小

我正在尝试计算GUI中uicontrols所需的实际大小,以便GUI可以适当地调整自身大小.我的问题是uicontrol的Extent属性只是文本区域,我找不到确定周围控件大小的方法(例如弹出窗口中的向下箭头或编辑控件的边距).有没有办法在控件上获得装饰的大小?

我在MATLAB Answers上看到了这个相关的问题,看起来它也没有解决方案.

编辑:

例如,我想计算这个弹出窗口应该有多大以避免切断内容:

uicontrol('style', 'popup', 'string', {'a long string'})
Run Code Online (Sandbox Code Playgroud)

范围只告诉我"长串"有多大,我仍然不知道弹出窗口有多大.我想要一种方法来确定用户显示器上需要多少额外空间(不假设他们使用哪种操作系统或字体大小).

matlab user-interface

5
推荐指数
1
解决办法
1088
查看次数

如何检测无损JPEG 2000压缩?

我有一个motion-JPEG 2000文件,我需要确定创建者是否使用无损压缩来根据文件本身创建它.我没有要比较的原始视频数据,我没有用于生成文件的应用程序的源代码.

基于我所发现的,看起来我能做的最好的是检查小波滤波器(双正交3/5)和量化步长(1),并假设这些条件为真时无损.

任何关于如何检查无损压缩的建议都非常感谢.我的工作环境是MATLAB或Java,但任何其他平台的提示都会有所帮助.

mjpeg lossless-compression jpeg2000 image-compression

5
推荐指数
1
解决办法
783
查看次数

MATLAB帮助抽象方法的内容

在普通的类方法中,我可以在MATLAB中为"help"命令提供内容.但是,在编写抽象方法时,帮助函数不会看到抽象方法.例如,如果您有一个NeedsHelp类:

classdef NeedsHelp
    methods (Abstract)
        INeedHelp(self)
        % This method is not visible to the help command.
    end
    methods
        function IHaveHelp(self)
            % This method shows help as expected.
        end
    end
end
Run Code Online (Sandbox Code Playgroud)

help命令的行为如下(R2009b):

>> help NeedsHelp.IHaveHelp
  This method shows help as expected.

>> help NeedsHelp.INeedHelp

NeedsHelp.INeedHelp not found.
Run Code Online (Sandbox Code Playgroud)

有没有为抽象方法提供文档的解决方案?

documentation matlab

2
推荐指数
1
解决办法
985
查看次数