table()
一直是MATLAB中的标准函数。从文档中我可以看出,与table
,sum
,cell
或任何其他builtin function相比,struct
没有什么特别之处。< / p>
但是,当我尝试使用builtin('table',var1,...varN)
运行该函数时,我收到错误消息:
使用内置错误
找不到内置函数'table'
进一步调查显示它实际上不被视为内置函数:
which('cell')
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\cell)
which('table')
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@table\table.m % table constructor
|
Not builtin
进一步调查:
which cell2mat
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\cell2mat.m
which mat2cell
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\mat2cell.m
which table2array
C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\table2array.m
which struct2cell
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@struct\struct2cell) % struct method
which cell2struct
built-in (C:\Program Files\MATLAB\R2014b\toolbox\matlab\datatypes\@cell\cell2struct) % cell method
因此,cell
是内置的,而table
则不是。{1}}。 cell2struct
内置cell2mat
,而function GetFullActivityDescription(id) {
var onSuccess = function () {
$('#full-activity-description-modal').modal('show');
}
var onFailed = function () { }
var UserContext = this;
PageMethods.GetFullActivityDescription(id, onSuccess, onFailed, UserContext);
}
则不是。
为什么会这样,是否有一种简单的方法来调用MATLAB不考虑内置的重载标准函数?
如果您认为为什么部分“过于宽泛”,请忽略它并跳转到问题的最后部分。
答案 0 :(得分:2)
#app/controllers/meals_controller.rb
class MealsController < ApplicationController
def edit
@log = Log.find params[:log_id]
@meal = Meal.find params[:id]
end
def update
@log = Log.find params[:log_id]
@meal = Meal.find params[:id]
@meal.update meal_params
end
end
#app/views/meals/edit.html.erb
<%= form_for [@log, @meal] do |f| %>
的文档页面给出了明确的定义:
内置函数是MATLAB可执行文件的一部分。 MATLAB没有在MATLAB语言中实现这些功能。虽然大多数内置函数都有与之关联的.m文件,但此文件仅提供该函数的文档。
答案 1 :(得分:2)
您可以通过以下方式找到本机功能:
allTables = which ( '-all', 'table' )
allTables(cell2mat(strfind ( allTables, matlabroot )))
它不是全面的,对于某些功能(例如总和),根文件夹中有很多...