c – 用于游戏开发的2D矢量建模

到目前为止,我唯一的想法可能是使用像Inkscape这样的建模,生成SVG文件,然后使用Cairo来导入和渲染它们.那会好吗,还是有其他建议?解决方法就2D矢量游戏编程而言,它通常是Flash和Flex的领域.仍然SVG并通过开罗加载似乎是一个可行的解决方案.虽然我会小心确保您已启用硬件加速.就2D格式而言,您不会得到任何格式的SVG的支持,所以我会坚持下去.技术上,像Collada或X3D这样的东西确实支持2D图形,但实际上它们对于2D程序员来说很无用.

c – 需要将析构函数声明为默认值

根据these准则:Ifthedefaultdestructorisneeded,butitsgenerationhasbeensuppressed(e.g.,bydefiningamoveconstructor),use=default.我无法想象,如果没有明确的默认析构函数在类中具有移动构造函数的代码将不正确.有人可以告诉我上面的例子吗?解决方法我认为这是一种错误,默认析构函数的隐含声明与移动

c – 什么时候应该使用unordered_map而不是std :: map

我想知道在哪种情况下,我应该使用unordered_map而不是std::map.每当我不注意地图中元素的顺序时,都要使用unorderd_map?解决方法地图>通常使用red-blacktree实现.元素被排序.>相对较小的内存使用.>相对快速查找:O.unordered_map>通常使用hash-table实现.元素没有排序.>需要额外的内存来保留哈希表.>快速查找O,但是恒定时间取决于可能相对较慢的hash-function.还要记住,你可以见到Birthdayproblem.

c – 可以默认默认构造函数抛出?

默认构造函数由C编译器生成,用户无法控制它们.他们可以扔吗?以下代码使用gcc编译好.解决方法允许向默认的特殊成员函数添加noexcept说明符.默认声明的特殊成员函数将具有noexcept说明符,具体取决于所涉及函数的noexcept说明符.如果明确指定noexcept,则编译失败,如果这与隐式noexcept说明符冲突.

解除引用的指针构造的地址

在unqlitec库中,我找到了以下代码:其中pVm是:和被调用的函数声明为:什么构造&用于调用而不仅仅是pVm?&是否相当于pVm?解决方法引用C11,章节§6.5.3.2,地址和间接操作符[…