2016-12-04 2 views
2

간단한 옥타브 스크립트를 실행하려고하는데 다음과 같은 문제가 있습니다.옥타브가 .m 파일의 변경을 인식하지 못합니다.

스크립트에 A 오류가 있다고 가정합니다. 이 스크립트를 실행하려고 할 때 Octave는 10 번째 줄, 10 번째 줄에 오류 A가 있다고보고합니다.이 줄을 주석 처리하고 스크립트를 다시 실행하려고 시도하지만 옥타브는 줄 A, 줄 10에서 오류 A를 계속보고합니다. 10.

이제 코드가 작성되었습니다.

classdef plotter < handle 
    properties (Hidden, SetAccess = protected) 
    column_no = 0; 
    row_no = 0; 
    plots = {}; 
    end 

    methods 
    function obj = plotter() 
     disp('plotter created'); 
    end 

    function add_plot(obj, plot) 
     obj.plots{end + 1} = plot; 
    end 

    function draw(obj) 
     vector_len = size(obj.plots) 
     grid_axis_size = ceil(sqrt(vector_len)); 

     for index = 1:vector_len 
     subplot(grid_axis_size, grid_axis_size); 
     imshow(obj.plots{index}); 
     endfor 
    end 

    end 

end 

옥타브 다음과 같은 오류보고 :

plotter_obj.draw()가 호출
clear; clc; 

#test_image_path = "/home/roman/Documents/prog/Prototype/project/resources/image/1.jpg"; 
test_image_path = "/home/roman/Documents/prog/Prototype/project/resources/image/3x3.jpeg"; 

plotter_obj = plotter(); 

source_image = imread(test_image_path); 
plotter_obj.add_plot(source_image); 

xyz_image = custom_image_conversion_routines.rgb2ciergb(source_image); 
plotter_obj.add_plot(xyz_image); 

plotter_obj.draw() 

, 다음과 같은 클래스가 작동하지해야

error: 'len' undefined near line 18 column 20
error: called from
draw at line 18 column 18
rg_chromacity_based_wavelet_transform at line 15 column 1

을하지만 아무도 거기에

내 주요 scrips에

다음 포함 len 상징은 draw 방법에서 더 이상 언급했다.

오류 메시지를 제거 할 수있는 유일한 방법은 옥타브를 종료하고 다시 시작하는 것입니다.

어떻게됩니까? 내 수업 방법을 수정 한 후 어떤 식 으로든 내 근무 환경을 재설정해야합니까?

+0

여기에 코드를 게시하십시오! –

답변

2

클래스를 변경 한 경우 변경 사항을 적용하려면 clear that class이 필요할 수 있습니다.

clear -classes 
+0

감사합니다. – Roman