首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ChucK -存储散列碎片的id值

ChucK -存储散列碎片的id值
EN

Stack Overflow用户
提问于 2018-07-31 00:06:34
回答 1查看 39关注 0票数 1

有点初学者,所以请耐心听我说。我正在写一些代码来试验shred sporking和移除,但遇到了一个问题。以下是我的代码的一部分:

代码语言:javascript
复制
while(hid.recv(msg)) //Hid hid is above
{
    if(msg.isButtonDown()) //HidMsg msg is above
    {
        spork ~ test() @=> Shred @ s; //test is just an empty function
    }

    if(msg.isButtonUp())
    {
        Machine.remove(s.id());
    }
}

然而,在这种情况下,我得到了错误"undefined variable 's'...“。因为定义's‘只在msg.isButtonDown()为真之后发生,所以我尝试了一种不同的方法。

代码语言:javascript
复制
while(hid.recv(msg))
{
    Shred s;

    if(msg.isButtonDown()) //HidMsg msg is above
    {
        spork ~ test() @=> s; //test is just an empty function
    }

    if(msg.isButtonUp())
    {
        Machine.remove(s.id());
    }
}

但是,这会导致错误"cannot remove: no shred with id 0...“。我不明白为什么s.id()会是0?第一个if语句中的阻塞不应该将s.id()定义为散列的id吗?我似乎无法克服这一点。

谢谢,

凯文·金

EN

回答 1

Stack Overflow用户

发布于 2018-07-31 03:58:40

Shred s的作用域是while循环体。您将在循环的每次迭代中创建一个新的Shred变量。它们是不同的参考。将变量声明(在本例中为Shred s)放在while循环之外。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51598066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档