2011-11-10 19 views
6

E 'possibile sovraccaricare una funzione in una classe Matlab che hai creato?possibile sovraccaricare la funzione nella classe MATLAB?

simile al seguente:

function [ sigma_nc ] = sustained_interference(N) 
     sustained_interference(N, N.center_freq); 
    end 

    function [ sigma_nc ] = sustained_interference(N, center_freq) 
     ... 
    end 

Purtroppo quando provo questo, ottengo un errore di ridefinizione

+0

correlati: http://stackoverflow.com/questions/8630889/overloading-functions/8631335#8631335 –

risposta

9

Se si crea la funzione di tramite quest'ultimo, allora si può passare solo un singolo parametro che sarà essere interpretato come il primo Se si desidera che i valori di default, allora si può fare qualcosa di simile:

function [ sigma_nc ] = sustained_interference(N, center_freq) 
    if nargin < 2 
     center_freq = N.center_freq; 
    end 
    ... 
end 
+0

a-ha, non ci andiamo. .. Avevo bisogno di narghilè per fare questo lavoro. Grazie mille! Quando mi permetterà di accettare la tua risposta, lo farò. – gnychis

Problemi correlati