请问VB中如何实现对象的clone?

解决方案 »

  1.   

    不能那样做吧,比如A类中有aP1和aP2属性,如用上述方法,A的实例AI中的aP1为“test”,则按上述方法Clone到A的另一实例AII后,如果AII的aP1属性更改后则AI中的aP1也被更改了。
    我是用如下方法做的:
    对于成员中的属性进行AII.aP1 =AI.aP1赋值操作,对于成员中的对象也只好用Set语句了。
    看看别的老兄们是否有高见?
      

  2.   

    goes_kad(钢筋混凝土):不是吧,那样只是传递了引用,及对象1和对象2指向了同一个对象。说的很对!VB不支持对象的Clone,要实现Clone重创建一个新的对象并用With语句把属性一个一个的都赋到新的对象上。
    或者直接拷贝内存块,并用COM的技术使这个内存块可以当作一个对象来使用,这个太高深了。对COM要了解的非常透彻。
      

  3.   

    看来VB并没有象java那样提供了clone的方法,这可能也是非单根结构的影响吧。
    painache(SystemOfaDown) 说的拷贝内存的方法是成立的,毕竟不可能把属性一个一个的都赋到新的对象上。