[原創文章歡迎轉載,但請保留作者信息]
Justin 于 2009-12-08
- 不允許拷貝。當資源本身不能復制時,對象可以說“不”。怎么做?回到Item6炒冷飯去……
- 使用Reference-Count(引用計數),可以用上節說到的shared_ptr來干這個事,這里順帶介紹了shared_ptr提供的一個接口:一個可以在構造對象時定義的delete操作:如果對象是內存就是釋放,如果對象是鎖就是解鎖。
- 直接復制。別人有什么,你就直接原封不動也復制一份。如果是內存的話說得過去,如果是鎖,我想還是不能這樣亂用哈。
- 移交所有權。這個不算是真正意義的復制,移交手續而已。最典型的例子就是auto_ptr的復制行為,Item13有炒過,去嘗嘗。
下課。一來因為我感冒了沒法寫那么多,二來因為人家大師在這一個Item里也就寫了那么多……