如何在Common Lisp中访问外部包的graph类
访问外部包中Graph类的方法
你可以通过给类名添加包前缀graph:来访问,和调用graph:populate函数的方式一致。修改后的示例代码如下:
(defvar *graph* (graph:populate (make-instance 'graph:graph) :nodes '(a b c d e f g) :edges-w-values '(((a b) . 3) ((b d) . 1) ((b c) . 2) ((c e) . 1) ((d e) . 2) ((e f) . 3))))
如果不想每次都写包前缀,还有两种可选方式:
- 导入整个
:graph包(不推荐,易引发符号冲突):
之后就能直接使用(use-package :graph :hsm-new)'graph和populate,无需前缀。 - 仅导入需要的符号(更安全):
这样只导入你用到的(import '(graph:graph graph:populate) :hsm-new)graph类和populate函数,避免不必要的符号冲突。
内容的提问来源于stack exchange,提问作者Oliver Cox
相关产品推荐
相关产品推荐

