C++代碼:在C#在C++中,指針的簡單迴歸安全/參考
person* NewPerson(void)
{
person p;
/* ... */
return &p; //return pointer to person.
}
C#代碼:
person NewPerson()
{
return new person(); //return reference to person.
}
如果我沒有理解這一權利,在C++的例子也不行,因爲p
將 超出範圍,並且該函數將返回一個野指針(懸掛指針)。
C#中的示例是可以的,因爲只要有引用,匿名新人就會保持在範圍內。 (呼叫功能得到一個。)
我收到了嗎?
你是[比較蘋果與橙子!](http://thisisindexed.com/wp-content/uploads/2011/11/card3052-380x232.jpg) –
也許,但它們都是水果。 :) – Niklas