当前位置: 首页 > 编程笔记 >

MATLAB不要使用现有的函数名称来命名变量

慕承允
2023-03-14
本文向大家介绍MATLAB不要使用现有的函数名称来命名变量,包括了MATLAB不要使用现有的函数名称来命名变量的使用技巧和注意事项,需要的朋友参考一下

示例

已经有一个功能sum()。结果,如果我们用相同的名称命名变量

sum = 1+3;

如果我们尝试在变量仍存在于工作空间中时使用该函数

A = rand(2);
sum(A,1)

我们将得到神秘的错误

Subscript indices must either be real positive integers or logicals.

clear() 首先使用变量,然后使用函数

clear sum

sum(A,1)
ans =
       1.0826       1.0279

我们如何检查功能是否已经存在以避免这种冲突?

which()与-all标志一起使用:

which sum -all
sum is a variable.
built-in (C:\Program Files\MATLAB\R2016a\toolbox\matlab\datafun\@double\sum)   % Shadowed double method
...

此输出告诉我们sum首先是一个变量,并且以下方法(函数)被其遮蔽,即MATLAB将首先尝试将我们的语法应用于该变量,而不是使用该方法。

 类似资料:
  • 我想问一下java编程语言,具体到构造函数。假设我们有一个类测试,在那里我们测试整个程序,和类点,在那里定义构造函数(集和获取方法btw)。类行: 类点: 现在,如果我在构造函数中输入类点的名称,那将是一个错误:

  • 问题内容: 我有一个JavaScript变量,其中包含JavaScript函数的名称。通过使用$ .ajax等加载并放置在页面上,此功能存在于页面上。 谁能告诉我如何调用变量中命名的javascript函数? 该函数的名称位于变量中,因为用于加载页面片段(将其插入到当前页面中)的URL包含要调用的函数的名称。 我愿意就如何实施此解决方案提出其他建议。 问题答案: 我会避免评估。 要解决此问题,您应

  • 问题内容: 我的问题是为什么我不能再次调用该函数?或者,如何做到这一点? 假设我有这个功能: 我称之为: 我得到4。 但是,假设我声明了一个与该函数同名的变量(错误): 现在,如果我尝试这样做: 要么: 我将收到此错误:“ TypeError:’int’对象不可调用” 无法将变量“ a”分配给函数? 问题答案: 完成此操作后: 不再是一个 函数 ,而只是一个 整数 (您已将其重新分配!)。因此,很

  • 问题内容: 是否可以选择名称为字符串的字段? 我需要这个来让触发器具有像这样的动态字段名称 问题答案: 如果该字符串在您的外部应用程序(如PHP)中,请确保构造MySQL语句。 如果字符串在MySQL表中,则不能。MySQL没有或没有这样的功能。以下是不可能的: 假设您有一个表,其中的字段引用该表中的列名之一。可能会有其他列允许您选择所需的列。 但是,您可以使用PREPARED STATEMENT

  • 问题内容: 我希望这个问题不是太简单,但是我不知道:( 如何在函数名称中使用var启动函数? 例如 … 我的职能 启动功能 我希望有人能帮助我。 提前致谢!彼得 问题答案: 将函数存储在一个对象中,而不是使其成为顶层。 然后,您可以像访问其他任何对象一样访问它们: 您也可以直接从对象访问它们… ……并避免将它们存储在一个对象中,但这意味着应该在全局范围内进行播放。

  • 问题内容: 如果我有 我如何在内部找出现在由表示的变量称为? 问题答案: 这是不可能的。即使是按引用传递也不会帮助您。您必须将名称作为第二个参数传递。 但是,您肯定要问的 不是 解决问题的好方法。