memcpy如下所示使用它是否更好,或者std::copy()在性能方面更好用?为什么?
char *bits = NULL;
...
bits = new (std::nothrow) char[((int *) copyMe->bits)[0]];
if (bits == NULL)
{
cout << "ERROR Not enough memory.\n";
exit(1);
}
memcpy (bits, copyMe->bits, ((int *) copyMe->bits)[0]);
Run Code Online (Sandbox Code Playgroud) 现代C++的功能在多大程度上如下:
用于游戏工作室?我很想知道库的名称和它们使用的C++特性.例如,Orge3D使用所有现代C++功能,包括异常和智能指针.换句话说,如果我要使用现代C++寻找游戏库的示例,我会去Orge3D.但我不知道这些功能是否会阻止游戏工作室使用Orge3D.
此外,我不知道是否还有其他例子.例如,我在一段时间之前使用过Box2D,但它只使用了placement new和class关键字作为C++特性.由于所有成员都是公开的,因此即使封装也在这些类中被打破.
理想情况下,如果C++功能最适合所有情况,那么最常使用这些功能.但似乎没有.阻抗是什么?显而易见的是必须阅读一摞书,但这只是半个原因.这个问题是对" 游戏编程的C++ - 爱还是不信任? " 的后续跟进(从回答中我得到的印象是许多C++特性仍未在游戏中使用;这不一定是应该的方式).