Home › Forums › GAMES在线课程(现代计算机图形学入门)讨论区 › 作业8 构建rope时出错 This topic has 15 replies, 10 voices, and was last updated 4 years, 7 months ago by clarence. Viewing 4 reply threads Author Posts 2020年4月27日 at 上午12:03 #6143 Score: 0 FlowingCrescentParticipant Karma: 3 pts 排查可知,当给masses[i]赋值,运行程序就会发生“Segmentation fault(core dumped)”,然后程序闪退……由于本次的想法也很简单,找来找去也没发现哪里有错,个人觉得可能是因为我不熟悉C++,而在哪里的写法上出了问题,还请各位大神不吝赐教…… Attachments:You must be logged in to view attached files. 2020年4月27日 at 上午12:29 #6145 Score: 0 arcParticipant Karma: 5 pts 这样创建的 m 和 s 的生命周期仅仅在循环体中,每次退出循环都会将它们销毁。这样直接取指针会导致之后使用已销毁的对象,产生运行时错误。 你需要使用动态内存分配的方法对对象的生命周期进行管理。 如 masses[i] = new Mass(position, node_mass, false), 下面的 springs 也类似。 2020年4月27日 at 上午1:04 #6147 Score: 0 FlowingCrescentParticipant Karma: 3 pts 原来如此,非常感谢!而我发现还需要记得把两个Vector都给resize一下,不然也依旧会报错,但是第一步做完现在只能看见3个分开的点,并不是一根线,我想问一下这个情况是所预期的吗? 2020年4月27日 at 上午1:06 #6148 Score: 0 FlowingCrescentParticipant Karma: 3 pts 啊,已经解决了,没事了~ 2020年4月27日 at 上午11:04 #6155 Score: 0 ScottParticipant Karma: -3 pt 请问你是咋解决的呀,我还是会一直出现这个报错 2020年4月27日 at 下午3:33 #6165 Score: 0 FlowingCrescentParticipant Karma: 3 pts 在我的那张图的基础上,我改成了层主所说的masses[i] = new Mass(position, node_mass, false),不过在那之前,我resize了一下俩vector的长度,如果不resize的话我也依然会报错 2020年4月27日 at 下午4:55 #6170 Score: 0 BearParticipant Karma: -11 pt std::vector 加元素得用 push_back 或者 emplace_back。。。 直接 resize 不好 2020年4月27日 at 上午3:32 #6149 Score: 0 o_o_o_o_oParticipant Karma: -1 pt 恩, 顺带马后炮一下 看到vector就应该想着 push_back 2020年4月27日 at 下午12:03 #6157 Score: 0 chihiroParticipant 我也出现了Segmentation fault (core dumped)实在找不出哪里的问题 可以帮忙看看嘛 Attachments:You must be logged in to view attached files. 2020年4月27日 at 下午12:33 #6162 Score: 0 waterParticipant Karma: 2 pts pinned_nodes不用塞数据 2020年4月27日 at 下午3:05 #6163 Score: 0 chihiroParticipant 感谢!还想问一下这个语句为什么加上了还是会报错Segmentation fault (core dumped)呢 Attachments:You must be logged in to view attached files. 2020年4月27日 at 下午4:16 #6166 Score: 0 YYParticipant Karma: 2 pts 看你之前的截图,这条语句你好像加在了构造节点之前了,是这样吗? 2020年4月27日 at 下午4:24 #6167 Score: 0 chihiroParticipant 是的 2020年4月27日 at 下午10:43 #6201 Score: 0 YYParticipant Karma: 2 pts 应该放在节点构造之后,masses没有初始化。 2020年5月1日 at 上午12:25 #6369 Score: 0 杰哥Participant Karma: 2 pts 顺便求问各位大佬,框架里面这段被注释掉的代码想表达什么意思呢?这个for (auto &i:)为什么可以这么写。 Attachments:You must be logged in to view attached files. 2020年5月1日 at 上午2:03 #6372 Score: 0 clarenceParticipant Karma: -2 pt 这是C++11的range for Author Posts Viewing 4 reply threads You must be logged in to reply to this topic. Log In Username: Password: Keep me signed in Log In