可能是编译器对int tPtr做类似const处理了。
Time::Time( int tPtr, int hr, int min, int sec )
所以造成变量是两个值,但是地址是一个。所以lz具体了解这种机制,看看通过反汇编来分析。
而我在VC下测试结果如下
Constructor - before assignment: 0012FDA8
Constructor - after assignment: 0012FDA8
Class Nothing: 0012FEBC
Class Nothing value: 90
Class Time value: -858993460
Class Time: 0012FDA8
Class Nothing: 0012FEBC
Class Nothing value: 900
Class Time value: -858993460
Class Time: 0012FDA8
Class Nothing: 0012FEBC
Class Nothing value: 9000
Class Time value: -858993460
Class Time: 0012FDA8
请按任意键继续. . .