zoukankan      html  css  js  c++  java
  • IDL 编译

    IDL 程序分两类:过程 pro  和函数 Function, 最大区别是函数有返回值
    pro add,a,b
      print,a+b
    end
     
    function add,a, b
      return,a+b 
    end
     
    1  .compile .run .rnew 编辑
    IDL 编译程序有.compile .run .rnew, 都需要在IDL命令行中输入
    % Compiled module: ADD.
    IDL> .compile 'C:UsersLQQIDLWorkspace estIDL_IDLBridge_testadd.pro'
    % Compiled module: ADD.
    IDL> .run 'C:UsersLQQIDLWorkspace estIDL_IDLBridge_testadd.pro'
    % Compiled module: ADD.
    IDL> .rnew 'C:UsersLQQIDLWorkspace estIDL_IDLBridge_testadd.pro'
    % Compiled module: ADD.
    .compile 可以对多个函数/过程同时被编译
    .run 是用来编译和执行IDL主程序的命令组合
    .rnew与run类似,但在主程序编译和运行之前将删除已经存在的变量
     
    2. resolve_routine 编译
    resolve_routine 以IDL程序模块名作为参数,编译同名文件。
    优点在于可在IDL程序模块里编译其他程序模块,无需命令行,不管模块之前是否已编译过,都会被重新编译
    pro test_resolve_routine
      compile_opt idl2
      resolve_routine, 'add', /EITHER
      add, 1,2
    end
     
    3. resolve_all 编译
    resolve_all 与 resolve_routine类似。将交互的搜索IDL内存中任何未编译的模块同时编译它们。
     
    IDL编译规则
    1. 编译到主程序后,编译就会停止,接着编译和运行主程序。
        这个规则表明了在一个*.pro文件中,只允许有一个主程序模块(与文件名同名模块);
        如果要编译所有程序模块,主程序模块必须时在文件中最后一个程序模块。
    2. 编译到文件末尾或适合其他规则时,文件将停止编译。
        这个规则表明,如果此文件中没有一个与文件名相同的模块,文件中所有模块将会被编译,但不运行任何一个模块。
     
    注意:IDL内置的系统过程,如plot, surface等优先级较高,因此,尽量避免自己的程序与IDL内置命令相同
     
  • 相关阅读:
    asp.net大文件(视频)分片上传
    numpy.argmin
    python-Numpy学习之(一)ndim、shape、dtype、astype的用法
    matlab设置小数位数
    利用Open3D进行点云可视化
    dell5820参数
    CUDA与cuDNN
    Ubuntu16.04更换cudnn版本
    二进制格式保存文件np.save和np.load-Numpy数组的保存与读取方法
    python pickle存储、读取大数据量列表、字典数据的方法
  • 原文地址:https://www.cnblogs.com/lqqgis/p/13626390.html
Copyright © 2011-2022 走看看