필터 지우기
필터 지우기

Instantiating Object Arrays with superclass call

조회 수: 1 (최근 30일)
Bolivar
Bolivar 2013년 6월 27일
Hi, I've wrote a baseStation class matlab class, which constructor is given as following:
function obj = baseStation(btscoord,btsid,attachedcell,aa,tx,sirmin,rxmax,rxmin,txmax,txmin)
nargin
if nargin <3
aa=0;
tx=0;
sirmin=0;
rxmax=0;
rxmin=0;txmax=0;txmin=0;
end
%call the superconstructor
obj = obj@btsRadio(aa,tx,sirmin,rxmax,rxmin,txmax,txmin);
%initiate class variable
obj.btsID = btsid;
obj.btsCoord = btscoord;
obj.attachedCell = attachedcell;
obj.btsInfo = importdata('btsInfo.mat');
end
when i try to call it in a nested for-loop, the second loop doesn't execute and an error occur : not enougth imput argument. The subclass baseStation seems not to receive arguments from last loop. I actually want to create an array object. Do someone tell me what I'm doing wrong?
thanks for your help
Bolivar

답변 (1개)

Muthu Annamalai
Muthu Annamalai 2013년 6월 27일
편집: Muthu Annamalai 2013년 6월 27일
Will you be posting the exact error message? That would help solve your problem.
I suspect you are running into problems with subscripting the object. Try instead, to create the first object as, a(1) = baseStation(args{:}) a(2) = baseStation(args{:})
should work and build what you are looking for.
  댓글 수: 4
Sean de Wolski
Sean de Wolski 2013년 6월 27일
@Bolivar: What about using repmat()?
Bolivar
Bolivar 2013년 7월 1일
repmat just make copies of the given object. That's mean the resulting array all have the same handle(a change in one object's Property brings change in all the other) which isn't actually what i'm expecting then all object in the array should be unique. nevertheless thanks

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Construct and Work with Object Arrays에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by