我有一个要实例化多次的类。类成员之一是固定大小的数组,我在其中存储温度数据。物理设备具有多个传感器,每个传感器都有一个与之关联的类的实例。
我发现,当我在定义类时初始化数组时,即
$('#save_edit_user').on('click', function () {
var isValid = $("#edit_user").validate().form() && $("#edit_user").validate().element("#edit_user_email");
//check current ajax call by $.active
//the form is not submitted before 0 ajax is running
if (isValid && $.active == 0){
// my save logic
}
});
将所有类实例的数据映射到相同的地址空间。因此,由于所有实例都在彼此之上进行写入,因此数据遭到破坏。
花了我一段时间才找到根本原因,但是解决方案很简单,将初始化移到__init:
class myClass:
myArray = [0] * 100
我找不到任何表明这是预期行为的内容(或者我误解了文档)。所以我的问题是,这是我的python实现中的异常还是预期的?
我来自Java / C#/ Swift背景,所以这让我措手不及。