静态分配对象而不是动态引用

时间:2019-05-07 19:00:18

标签: arrays vb.net object

我想将一个对象静态分配给那些对象。在下面的代码结尾,CO_m_contractInfo数组中的所有三个条目(0,1,2)都指向m_contractInfo,其中包含来自第三合同的信息。希望数组包含第一,第二和第三合同的静态信息。

如何实现静态分配,以便数组包含所有3个合同的合同信息?

def min_idx(self, lists):
    idx = 0

    for i in range(len(lists)):
        if lists[i].val < lists[idx].val:
            idx = i
    return idx

def mergeKLists(self, lists):
    head = tail = ListNode(-1)

    lists = list(filter(lambda x: x is not None, lists))

    while len(lists) > 0:
        m_idx = self.min_idx(lists)

        tail.next = lists[m_idx]
        tail = tail.next
        lists[m_idx] = lists[m_idx].next

        if lists[m_idx] is None:
            del lists[m_idx]

    return head.next

1 个答案:

答案 0 :(得分:1)

如果您的问题是该数组包含指向同一对象的三个指针,并且不应该,那么答案是每次将其添加到数组中时,您都必须新建m_contractInfo变量,以便每个变量都具有不同的实例时间。