2014-04-16 2 views
1

클래스와 함수가 있습니다. 클래스에 함수를 넣고 싶습니다. 다른 클래스에서 전체를 호출하려고하지만, 호출하는 동안 특정 오류가 발생합니다. 호출 할 가능성이 있습니까? 클래스 생성자에서 호출하지 않고 함수를 호출합니까? 현재 클래스 생성자를 호출 중이지만 가능한 다른 방법이 더 있습니다. func에 다섯 가지 인수가 필요합니다. 어떻게 함수를 클래스로 만들 수 있습니까?classdef matlab에서 함수를 호출하는 방법

입력 인수는 obj.arg1=arg1; 내 코드를 제공하는 동안 내가 생성자도 시도

:

classdef myClass 
     properties 
      node; 
     end 
     properties (Access=private) 

     end 
     methods 
     function obj = myClass() 

     func(obj,obj,obj,obj,obj); 
     end 

     function node = func(arg1,arg2,arg3,arg4,arg5) 
      %some operation 
     end 
end 

답변

1

당신의 인스턴스를 인스턴스화하지 않고 통화 할 이러한 기능에 대해 별도의 methods(Static) 섹션이하려는 수업. 정적 섹션의 모든 메소드의 경우, 다른 파일에서 수행 할 수 있습니다

<some code here> 
answer = myClass.myStaticMethod(args); 
<rest of code here> 

(Static)없이 일반 methods 블록 아무것도 인스턴스, 즉에 대한 방법을 클래스를 인스턴스화 한 후 전화를해야합니다 반면 :

<some code here> 
classInstance = myClass(constructor args) 
answer = classInstance.myNonStaticMethod(args); 
<rest of code here>