Yas*_*aev 18
要从模块中导出函数,请使用provide,考虑一个文件"foo.rkt":
#lang racket
(define fortytwo 42)
(define (det a b c)
(- (* b b) (* 4 a c)))
(provide (fortytwo det))
Run Code Online (Sandbox Code Playgroud)
该文件"bar.rkt"现在可以导入以下定义"foo.rkt":
#lang racket
(require "foo.rkt")
(define (baz a b c)
(+ (det a b c) (- c 4)))
Run Code Online (Sandbox Code Playgroud)
您可以允许其他文件访问文件中定义的所有内容的另一种方法是使用(all-defined-out):
#lang racket
(define fortytwo 42)
(define (det a b c)
(- (* b b) (* 4 a c)))
(provide (all-defined-out))
Run Code Online (Sandbox Code Playgroud)
希望有所帮助.
Sam*_*adt 13
您可以使用include如下:
创建一个名为的文件"foo.rkt",如下所示:
(define x 1)
(define y 2)
Run Code Online (Sandbox Code Playgroud)
然后在另一个文件中:
#lang racket
(require racket/include)
(include "foo.rkt")
(+ x y)
Run Code Online (Sandbox Code Playgroud)
你应该看到结果3.
您也可以查看文档include.