找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 517|回复: 5

[求助] 如何将字符串定义成函数名?

[复制链接]

已领礼包: 48个

财富等级: 招财进宝

发表于 2017-5-5 06:40:08 来自手机 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
如何用字符串"abc",定义成函数名,去执行已知lisp?

类似于:(defun c:abc() …)
需要效果:输入abc,执行已知lisp
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 5060个

财富等级: 富甲天下

发表于 2017-5-5 06:53:40 来自手机 | 显示全部楼层
vlax-add-cmd
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-5-5 08:11:09 | 显示全部楼层
http://bbs.xdcad.net/thread-678473-1-1.html
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 859个

财富等级: 财运亨通

发表于 2017-5-5 09:12:40 来自手机 | 显示全部楼层
defun c:xxx 中xxx在命令行使用和command是一样的,只有在alisp语句中不能使用(command "xxx")也不能有参数,需要用(c:xxx)调用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 48个

财富等级: 招财进宝

 楼主| 发表于 2017-5-5 13:59:29 | 显示全部楼层
本帖最后由 pxt2015 于 2017-5-5 14:01 编辑


(defun c:t2 ()
  (defun adcg_function () (prompt "\nhello new!"))
  (setq fname "adcg_function")
  (eval (read (strcat "(" fname ")")))
  (princ)
)
;;==============================
(setq fu_name "abc");定义变量
(defun c:xxx ()
  ......
)
;;需要用变量 fu_name 作为函数名(示例中的XXX),而不是t2
例如: command: abc  
执行程序

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2017-5-5 14:15:19 | 显示全部楼层

你字符串变量值是  "abc" , 那你c:xxx应该定义成 c:abc才行

(defun c:t2 ()
  (defun adcg_function () (prompt "\nhello new!"))
  (setq fname "abc")
  (eval (read (strcat "(c:" fname ")")))
  (princ)
)
;;==============================

(defun c:abc ()
  (princ "\n执行到这里了,abc")
)

定义成命令c:,调用的函数名要带C:  ,比如上面的 (c:abc) 回车 相当于 abc回车
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-12 10:38 , Processed in 0.237541 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表