我只是关于实例变量展示位置的一个小问题.
例:
private void example_MouseMove(object sender, MouseEventArgs e){
    //do stuff
}
c#中的鼠标移动事件一直在轮询.有时我可能只想在鼠标位置完全移动到另一个像素时才在其中运行代码.所以我会写这个:
private void example_MouseMove(object sender, MouseEventArgs e){
    if (_prevMousePosition == Cursor.Position) return;
    //Do stuff
}
我的问题是:变量"_prevMousePosition"是否按照惯例放在类的顶部,或者它是否直接位于方法的顶部,如下所示:
private Point _prevMousePosition = new Point(0, 0);
private void example_MouseMove(object sender, MouseEventArgs e){
    if (_prevMousePosition == Cursor.Position) return;
    //Do stuff
}
我觉得它应该位于方法的顶部,因为它将被访问的唯一地方是事件,并且该方法之外的唯一目的是保留先前的鼠标位置.
另外,如果没有实例变量可以实现相同功能的另一种方法,我很想知道它.