匿名對象是一個比較零碎的知識點,雖然不是考察的重點,但是我還是覺得有必要提一嘴。
看一段代碼:
new ClassName().Function();
上邊的一句代碼中,直接新建了一個對象,並調用了之中的Function函數,但是沒有用任何引用指向這個對象。這裏大家也大概看得出來,匿名對象只是爲了臨時使用,並且在語句結束之後被回收。其實在C/C++中也有類似操作,比如for循環中的指示變量i:
for (int i = 0; i < length; i++) //i作爲局域性變量,在for循環結束後被消除
{
cout << i << endl;
}
匿名類的使用場景大致有如下幾點:
- 方法中需要某一個類的對象作參數,並且該對象除此之外別無它用;
- 該對象的作用只是調用一次其中的某個方法,除此之外別無它用。