| 发表于:2008-01-10 22:56:06 楼主 |
下面这个函数明明是传的引用,为什么值为改变? #include <iostream> #include"emp.h" #include"linked.h" using namespace std; typedef employee* empptr; void sample (empptr xptr, empptr yptr) { xptr = yptr; } // sample int main() { empptr emp1ptr, emp2ptr; emp1ptr = new employee; emp2ptr = new employee; (*emp1ptr).readinto(); (*emp2ptr).readinto(); sample (emp1ptr, emp2ptr); (*emp1ptr).printout(); (*emp2ptr).printout(); cin.get(); cin.get(); return 0; } 我觉得emp1ptr和emp2ptr在传到sample后都指向emp1ptr.至少在c#和java里是这样的。 |
|
|
|
|