在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 633|回复: 2

[求助] skill怎么定义局部函数

[复制链接]
发表于 2023-12-21 18:02:39 | 显示全部楼层 |阅读模式

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

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

x
(let () (procedure myproc() ))

能不能让定义的myproc函数只在let里面有效


补充内容 (2023-12-23 14:27):
解决了 在手册里搜local func发现lambda匿名函数可以,赋给局部变量
myfunc = lambda( (param1 param2...) cond1... )
funcall(myfunc param1 param2...)

补充内容 (2023-12-23 14:32):
主要是写在pcell里的函数会报redefined的错误,3楼的应该也可以
只是解决报错的话用defmethod也可(有warning),或者putd( 'myfunc lambda(....)
发表于 2023-12-21 18:12:16 | 显示全部楼层
let 是定义局部变量啊。。。不存在你说的“myproc函数只在let里面有效”
发表于 2023-12-21 18:22:10 | 显示全部楼层
可以用SKILL++里面附属在一个object上的member function, 跟C++的概念一样的。这时候这个member function的 scope就是局部的。用 defun() defmethod(), 不是procedure()。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-5 16:29 , Processed in 0.014528 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表