草庐IT

DirectX11

全部标签

c++ - Eigen C++ 库给出 C++ 11 选项的错误

我有以下使用EigenC++库的C++代码。#include"Dense"#includeintmain(){Eigen::MatrixXfx(10,10);x.setRandom();std::cout当我使用“-std=gnu++11”尝试g++时,出现以下错误。Infileincludedfrom/usr/include/c++/4.8/tuple:39:0,from/usr/include/c++/4.8/functional:55,from../SP_ToolBox/ExternalLibraries/Eigen/Eigen/Core:153,from../SP_ToolBo

C++11:当定义移动构造函数时,按值返回对象不会抛出异常吗?

在C++11和更高版本的标准中,是否保证在从函数按值返回类对象时,(可能会抛出异常)复制构造函数不被调用-提供移动构造函数是为这个类定义的?背景:假设structX{X(){}X(constX&){/*codethatmightthrowexceptions*/}X(X&&){/*codethatneverthrowsexceptions*/}...};和Xmy_func(some_type&t){Xx;//codethatmodifiestandxbutneverthrowsexceptionsreturnx;}现在,例如,一个表达式,如some_other_func(my_func

c++ - c++11 严格别名规则是否允许通过 char *、char(&)[N]、甚至 std::array<char, N>& 使用 -fstrict-aliasing -Wstrict-aliasing=2 访问 uint64_t?

根据this关于C++11/14严格别名规则的stackoverflow回答:Ifaprogramattemptstoaccessthestoredvalueofanobjectthroughaglvalueofotherthanoneofthefollowingtypesthebehaviorisundefined:thedynamictypeoftheobject,acv-qualifiedversionofthedynamictypeoftheobject,atypesimilar(asdefinedin4.4)tothedynamictypeoftheobject,atypet

c++ - 实际上,C++11 中 std::atomic 的内存占用是多少?

我正在编写的一个程序需要在ram中存储大量数据(几千兆字节)以供多个线程原子访问。std::atomic似乎是一种合理的方式来做到这一点,因为它的访问可能比将所有访问包装在一个或多个std::mutex中更有效。s,因为,最坏的情况下,它将在内部使用互斥量并且是等效的。我的数据组织为一组Chunk对象,除其他外,它们有一个包含大部分数据的数组成员。现在,我正在考虑将其定义为std::array,SOME_CONSTANT_HERE>,但这只有在内存占用为std::atomic时才会有效在内置类型上,例如unsignedint不比unsignedint差本身,因为根据我的计算,以我需要存

c++ - 如何在没有警告的情况下在 gnu++11 标准中写入 "nested if...else statement for constants"?

当我使用嵌套的if....else语句时if(std::is_same::value){//dosomething}elseif(std::is_same::value){//dosomethingelse}...else{//printerror}我收到QACPP静态代码分析器的编译器警告qacpp-4.2.1-4090,其中包含消息“此‘if’语句中的条件是常量。”我该如何修复gnu++11标准中的编译器警告?注意:我不是C++专家,所以如果这个问题听起来很业余,请原谅。 最佳答案 对于T的特定实例,if条件是常量。换句话说st

c++ - 使用 C++11 检查函数签名是否相同?

//test.cpp#includedouble*func(){}static_assert(std::is_same::value,"");intmain(){}编译命令:g++-std=c++11-ctest.cpp输出:test4.cpp:6:1:error:staticassertionfailed:static_assert(std::is_same::value,"");^上面的代码有什么问题?我该如何解决? 最佳答案 func是一个函数,你检查它是否是指向函数的指针,它失败了参见://test.cpp#include#

c++ - Directx9 高光贴图

我如何实现加载纹理以用作一block几何体的镜面贴图并使用C++在Directx9中渲染它?有没有什么教程或者基本的例子可以引用? 最佳答案 使用D3DXCreateTextureFromFile从磁盘加载文件。然后,您需要设置一个着色器,将镜面反射值乘以存储在纹理中的值。这为您提供了镜面反射颜色。所以你的最终像素来自Final=ambient+(N.L*texturecolour)+(N.H*texturespecular)您可以在着色器中轻松完成此操作。同样值得注意的是,在纹理的alphachannel中存储每个纹素的镜面反射非

Ubuntu20.04+ros-noetic-gazebo11下gazebo的仿真环境搭建

文章目录前言一、gazebo中导入官方库二、在blender中制作复杂地形图三、gazebo仿真的gpu加速四、gazebo仿真效果五、总结前言在部署真实机器人前进行gazebo仿真是十分必要的,本文记录了从零搭建仿真中遇到的问题。一、gazebo中导入官方库gitclonehttps://github.com/osrf/gazebo_models将得到的gazebo_models文件夹内容复制到/usr/share/gazebo-11/models如果没有权限无法粘贴,终端执行:sudonautilus现在在终端打开gazebo,点击左上角insert就可以看到倒入的模型库了二、在blend

c++ - 哪里有好的 DirectX (3D) DirectWrite 教程?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭8年前。Improvethisquestion我正在将我的一些directx10代码重构为directx11,并试图为我的文本函数找出DIrectWrite。从MSDN中,我听说他们正在将所有内容切换到此,并且directwrite现在包含在direct3d中。但是,嗯-我找不到实际显示3d渲染文本的教程。有人知道一个例子吗?

c++ - 在 C++11 中正确编写源函数

我的头很痛:我读了很多关于C++11x的移动语义的博客,以至于我的大脑变得糊涂了,所以请有人给我一个关于如何使以下代码高效工作的简短但有趣的指南吗?给定一个类Foo,我希望能够编写返回不同状态的Foo对象的函数(有时称为源函数),并尽可能高效地执行此操作。classFoo{//Somemethodsandmembers};FoogetFirstFoo(){Foofoo;//Dosomethingstofooreturnfoo;}FoogetSecondFoo(){Foofoo;//Dosomedifferentthingstofooreturnfoo;}intmain(){Foof=g