小编mmc*_*ole的帖子

Tab键== 4个空格并在Vim中的花括号后自动缩进

我如何制作vi - Vim从不使用制表符(将空格转换为制表符,不好!),制作Tab键== 4个空格,并在像Emacs这样的大括号块之后自动缩进代码?

另外,如何保存这些设置,以便我再也不必输入它们?

我已经看到了与此相关的其他问题,但它似乎总是与我想要的有点不同.

vi vim whitespace indentation auto-indent

1224
推荐指数
9
解决办法
79万
查看次数

模拟器如何工作以及它们是如何编写的?

模拟器如何工作?当我看到NES/SNES或C64模拟器时,它让我震惊.

http://www.tommowalker.co.uk/snemzelda.png

您是否必须通过解释其特定的装配说明来模拟这些机器的处理器?还有什么进入它?它们通常是如何设计的?

你能为有兴趣编写模拟器(特别是游戏系统)的人提供建议吗?

c64 emulation

968
推荐指数
11
解决办法
29万
查看次数

如何在Vi中修复整个文件的缩进?

在Vim中,纠正所有行缩进的命令是什么?

很多时候我会将代码复制并粘贴到远程终端中并使整个过程搞砸了.我想一举解决这个问题.

vi vim indentation

611
推荐指数
10
解决办法
27万
查看次数

类中的项目顺序:字段,属性,构造函数,方法

在课程结构方面,是否有关于项目顺序的官方C#指南?

它会去:

  • 公共领域
  • 私人领域
  • 属性
  • 构造函数
  • 方法

我很好奇是否有关于物品顺序的硬性规定?我到处都是.我想坚持一个特定的标准,所以我可以到处做.

真正的问题是我的更复杂的属性最终看起来很像方法,他们觉得在构造函数之前顶部不合适.

有什么提示/建议吗?

.net c# coding-style code-cleanup code-structure

596
推荐指数
9
解决办法
20万
查看次数

在构造函数或声明中初始化类字段?

我最近一直在用C#和Java编程,我很好奇最好的地方是初始化我的类字段.

我应该在申报时做到吗?:

public class Dice
{
    private int topFace = 1;
    private Random myRand = new Random();

    public void Roll()
    {
       // ......
    }
}
Run Code Online (Sandbox Code Playgroud)

或者在构造函数中?:

public class Dice
{
    private int topFace;
    private Random myRand;

    public Dice()
    {
        topFace = 1;
        myRand = new Random();
    }

    public void Roll()
    {
        // .....
    }
}
Run Code Online (Sandbox Code Playgroud)

我真的很好奇你们有些人认为最好的做法.我想保持一致并坚持一种方法.

java

394
推荐指数
7
解决办法
13万
查看次数

System.currentTimeMillis vs System.nanoTime

精度与 精确

我想知道的是在更新我的对象在游戏中的位置时是否应该使用System.currentTimeMillis()System.nanoTime()?它们的运动变化与自上次呼叫后经过的时间成正比,我希望尽可能精确.

我读过不同的操作系统之间存在一些严重的时间分辨率问题(即Mac/Linux的分辨率几乎为1毫秒,而Windows的分辨率为50毫秒).我主要在Windows上运行我的应用程序,50ms分辨率似乎非常不准确.

有没有比我列出的两个更好的选择?

有什么建议/意见吗?

java timer time-precision

370
推荐指数
7
解决办法
37万
查看次数

通过批处理或cmd文件停止并启动服务?

我如何编写一个bat或cmd脚本来通过错误检查可靠地停止和启动服务(或者让我知道它无论出于何种原因都不成功)?

windows command-line cmd batch-file

282
推荐指数
8
解决办法
78万
查看次数

球与球的碰撞 - 检测和处理

在Stack Overflow社区的帮助下,我写了一个非常基本但有趣的物理模拟器.

替代文字

单击并拖动鼠标以启动球.它会反弹并最终停在"地板"上.

我想要添加的下一个重要特征是球与球的碰撞.球的运动被分解为ax和y速度矢量.我有重力(每一步的y矢量小减少),我有摩擦(每次与墙碰撞的两个矢量的小减少).球真诚地以令人惊讶的逼真方式移动.

我想我的问题有两个部分:

  1. 检测球与球碰撞的最佳方法是什么?
    我是否只有一个O(n ^ 2)循环遍历每个球并检查每个其他球以查看它的半径是否重叠?
  2. 我用什么方程来处理球与球的碰撞?物理101
    它如何影响两个球的速度x/y向量?两个球进入的最终方向是什么?我如何将其应用于每个球?

替代文字

处理"墙壁"的碰撞检测和由此产生的矢量变化很容易,但我发现球 - 球碰撞的并发症更多.对于墙壁,我只需要采取适当的x或y向量的负数,然后关闭它将朝正确的方向前进.有球我认为不是这样.

一些快速澄清:为了简单起见,我现在可以完全弹性碰撞,现在我的所有球都具有相同的质量,但我将来可能会改变它.


编辑:我发现有用的资源

带矢量的2d球物理:无三角碰撞的二维碰撞.pdf
2d球碰撞检测示例:添加碰撞检测


成功!

我的球碰撞检测和响应工作很棒!

相关代码:

碰撞检测:

for (int i = 0; i < ballCount; i++)  
{  
    for (int j = i + 1; j < ballCount; j++)  
    {  
        if (balls[i].colliding(balls[j]))  
        {
            balls[i].resolveCollision(balls[j]);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这将检查每个球之间的碰撞但跳过多余的检查(如果你必须检查球1是否与球2碰撞,那么你不需要检查球2是否与球1碰撞.此外,它会跳过检查是否与自身发生碰撞).

然后,在我的球类中,我有我的colliding()和resolveCollision()方法:

public boolean colliding(Ball ball)
{
    float xd = position.getX() - ball.position.getX();
    float yd = position.getY() - ball.position.getY();

    float sumRadius = getRadius() + ball.getRadius();
    float sqrRadius …
Run Code Online (Sandbox Code Playgroud)

language-agnostic graphics physics collision-detection

262
推荐指数
7
解决办法
18万
查看次数

加密和签名非对称加密有什么区别?

加密某些数据与签署某些数据(使用RSA)有什么区别?

它是否简单地颠倒了公钥 - 私钥的作用?

例如,我想使用我的私钥生成消息,所以只有我可能是发件人.我希望我的公钥用于阅读消息,我不在乎谁阅读它们.我希望能够加密某些信息并将其用作我的软件的产品密钥.我只关心我是唯一能够产生这些的人.我想在我的软件中包含我的公钥来解密/读取密钥的签名.我不在乎谁可以读取密钥中的数据,我只关心我是唯一可以生成它们的可验证的人.

在这种情况下签名是否有用?

encryption signing rsa license-key

252
推荐指数
9
解决办法
13万
查看次数

汇编代码与机器代码对象代码?

目标代码,机器代码和汇编代码之间有什么区别?

你能举出他们差异的视觉例子吗?

assembly machine-code object-code

215
推荐指数
6
解决办法
15万
查看次数