访问对象内部方法中的“ this”

时间:2020-01-09 10:54:03

标签: object octave

我对C ++很有经验,我尝试在Octave中创建一些对象。

我不明白如何访问成员函数内部的对象字段。

一个丑陋的解决方案是将对象作为参数传递给成员函数。

function increase()
  ++this.counter;
endfunction

a.counter = 0;
a.inc = @increase;   % Unfortunately, this is a callback. Not a member function.

a.inc();
a.counter   % Must become 1

我想在一些FEM中使用它。

我有很多带有element.type =“ bar”或“ beam”或“ spring”或...的“ element”结构。

每个元素都必须创建自己的shapefunction矩阵。到目前为止,我使用的是switch(element.type),但我想知道是否可以为每个结构创建成员函数,可以访问诸如this.field 之类的结构字段,以避免这种代码风格。当然,我可以使用带有参数的回调函数来创建字段。

0 个答案:

没有答案