2011-12-29 88 views
0

我目前使用NinevehGL引擎來開發一個簡單的應用程序。這個引擎有一個名爲NGLMesh的類,它爲這個類的一個實例存儲openGL數據。從NinevehGL的文檔位於http://nineveh.gl/docs/Protocols/NGLCopying.html的copyInstance方法,它說:從框架調用協議?

「的NGLCopying是可可協議的擴展NSCopying

它定義了兩個基本複印模式NinevehGL對象:

Copy: Makes a new clone, copying all the used memory. 
Copy Instance: Makes a new clone, but clonning just the superficial memory." 

我想使用這種方法將我的一個NGLMesh複製到新的NGLMesh實例中,但是Im很難理解協議以及如何調用它們。有人可以提供一些解釋嗎?到目前爲止,互聯網已證明有點令人困惑。

從我收集的內容(儘管Im很可能是錯的)我需要在需要使用的類中「採用」NGLCopying協議。我似乎無法找到關於如何實現這一目標的很多信息。

回答

0

協議只是一個類可以響應的消息列表。把它看作是該課程@interface區塊的延伸,只有它可以被幾個課程共享。如果您只是想複製已經符合本協議的另一個類(如NGLMesh),則不需要執行任何特殊操作 - 只需要執行[yourNGLMeshObject copy][yourNGLMeshObject copyInstance]即可。