小编use*_*605的帖子

将WindowBuilder集成到现有的eclipse项目中

我正在进行需要UI的作业.我使用Eclipse并且已经启动并运行了WindowBuilder.几周前,我创建了一个WindowBuilder SWT项目来创建我的GUI.我只做了布局元素以获得它的外观的可视化副本,但没有任何额外的代码来做任何事情.

从那时起,我已将大部分代码编写在一个单独的Eclipse项目中,该项目未设置为WindowBuilder项目,并且还与Github同步.我试图将我现有的WindowBuilder UI导入到这个项目中,但遇到了一些问题.起初,我只是尝试复制JAVA文件,但是我收到了大量关于缺少依赖项的错误.看起来WindowBuilder项目有一堆普通项目没有的引用库.

无论如何,是否有一种简单的方法可以将WindowBuilder功能添加到现有项目中?这比尝试将现有项目移动到我的WindowBuilder项目要容易得多.任何帮助都将非常感激.谢谢!

eclipse user-interface interface windowbuilder

3
推荐指数
1
解决办法
5374
查看次数

为什么我的向量中的项目在C++中的for-each循环期间不会发生变化?

我是C++的新手,通常是Java代码.我很难理解C++中的容器是如何与我在Java中习惯的相同和不同.

对于我现在正在做的项目,我已经创建了自己的数据结构,称为solar_body.其中每个都包含名称,质量,半径和3个数据结构,称为position_t,velocity_t和acceleration_t.希望这些名称是自我解释的.

我正在使用向量来保存程序中solar_body对象的集合.我似乎发现了一个问题,使用我从Java中知道的for-each循环,希望有人可以解释发生了什么.

我在向量上运行一个循环,调用每个对象上的update方法(solar_body.update()).这将根据该迭代的当前加速度计算新的速度和位置.当我第一次设置它时,我像这样做了我的for循环:

for (solar_body body: bodies) {
  body.update(); }
Run Code Online (Sandbox Code Playgroud)

当我这样做并打印变量时,速度和位置会更新.但是,在我的下一个while循环迭代期间,新值将消失,并且它们将返回到相同的旧值.似乎for-each循环在solar_body对象的副本上运行,而不是原始对象.

出于好奇,我改变了我的for循环:

for (int i=0; i<bodies.size(); i++) {
  bodies.at(i).update(); }
Run Code Online (Sandbox Code Playgroud)

这是我所期望的.在Java中,使用这两个循环的实践确实没有区别.在这种情况下发生了什么,我不明白?

在此先感谢您的帮助.

c++ for-loop vector

3
推荐指数
1
解决办法
162
查看次数