方案:如何检查是否无效
我收到此错误:
cdr: expects argument of type <pair>; given #<void>
并检查 (null? argument)
是否不起作用
我搜索了很多 void?
function ,但我能找到任何东西 所以,有什么想法吗:)
预先感谢一百万
I get this error :
cdr: expects argument of type <pair>; given #<void>
and checking if (null? argument)
isn't working
I searched alot for void?
function , but I could find anything
so , any ideas ppl :)
thanks a million in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只需使用
pair?
看看是否可以cdr
它。没有针对 void 的具体检查,因为它本质上是一种幻像类型。Just use
pair?
to see if you cancdr
it. There is no specific check for void, since it's essentially a phantom type.克里斯的回答很好,因为您确实想检查 cdr 的对,但为了将来的参考,您可以执行
(eq? (void) (void))
if( void)
可用,或者如果您想定义自己的(void)(eq? (if #f #t) (if #f #t))
>。Chris's answer is good because you really want to be checking for a pair to cdr, but for future reference, you may be able to do
(eq? (void) (void))
if(void)
is available or(eq? (if #f #t) (if #f #t))
if you want to define your own(void)
.