2010-07-08 60 views
2

我被告知最新的Qt是基於可可的,因此它是64位的。而Cocoa是基於Object-C的,而Qt是基於C++的。Qt或wxWidgets可可?

  • 這怎麼可能?我的意思是,基於C++的庫如何變成與Objective-C相關的庫?這只是使用Objective-C++嗎?
  • 任何C++庫都可以使用基於Cocoa的Objective-C++嗎?

回答

2

Objective-C++可讓您將C++和Objective-C結合在同一個源文件中。所以你可以在這裏做有趣的事情。例如,我創建了C++類,之前調用了可可事物,如NSNotification。

所以我懷疑你只需用C++編寫,調用C++對象......這些對象是作爲Objective-C方法的C++包裝實現的。

wxWidgets有類似的事情發生,wxCocoa,但最後我聽說這是未來的Mac平臺,這意味着他們仍在構建它。

1

Objective C是C的一個嚴格超集。這意味着任何有效的C程序都可以與Objective C編譯器進行編譯。由於C++向後兼容C,因此連接它們相當簡單。 C++部分只需要瞭解一些Objective C的運行時庫。