一个通过C#与XNA接口,但是有谁知道库本身实现了什么语言?
答案 0 :(得分:2)
来自前XNA主管,Shawn Hargreaves:
大部分XNA本身都是用C ++编写的
由于绝大多数XNA是托管代码,我希望Shawn具体意味着C++/CLI。
C ++ / CLI的独特之处在于它非常适合编写在本机和托管Universe之间桥接的代码,包括C#中没有的功能。特别是,您可以在一个程序集中混合本机代码和托管代码,并直接从托管代码调用本机代码。
XNA广泛使用DirectX(以及其他一些东西),这是本机代码,因此使C ++ / CLI成为一个很好的选择。
当然,XNA处理所有本机的东西,所以你不必这样做。尽可能坚持使用C#。