草庐IT

Vector3d

全部标签

c++ - 如何在集合元素中重用 vector ?

所以我正在使用我的程序将我的RasperryPi相机流式传输到我的计算机,但是。下面列出的vector给我带来了问题。在大约30秒的流式传输后,它给了我std::bad_alloc。有没有办法在循环中一遍又一遍地重复使用这个vector(例如调整大小、清除)?这是简化的代码:while(isRunning){recv(Connection,received_message,sizeof(received_message),NULL);//receivingthesizeofimageinbytesfileSize=atoi(received_message);std::vectorfi

c++ - 使用 C++/STL 将 std::vector<CString> 展平为 multi_sz 的推荐方法是什么

我想将存储在std::vector中的字符串列表(ATL::CString)写入Windows注册表中的REG_MULTI_SZ值。我知道如何在普通C中执行此操作(迭代一次以获得总长度,分配一个缓冲区,将字符串复制到由“\0”分隔的缓冲区)。知道我使用STL尝试了以下操作(抱歉,我必须将VS2010与“foreach”一起使用):std::vectormultiline_sz;foreach(CStringentryinmyStringList){TCHAR*buf=entry.GetBuffer();multiline_sz.insert(multiline_sz.end(),&bu

c++ - 使用 Windows API 和 C++ 进行 2D(或 3D)图形编程?

我即将开始我的大学类(class)单元项目。我希望用C++制作有点像小行星的复古2D游戏。我可以使用SFML之类的东西来做到这一点,这看起来肯定是合乎逻辑的事情。但是我不能使用SFML,因为这些库在Windows上默认不可用。要求是我的C++代码必须复制并粘贴到任何WindowsPC(已安装VisualStudio),然后从VisualStudio编译/运行。我以前从未使用过WindowsAPI,但我觉得我可以使用它打开一个窗口并在窗口中绘制一些二维图形。我对么?基本上这就是我需要做的所有事情:打开一个窗口,然后在上面画一些线。这不是“你能帮我做作业吗”类型的问题。如果这是我需要的工具

c - 用 GDI 绘制 opengl/D3D?

我想知道是否可以使用GDI在opengl/direct3D表面上绘制?如果是这样,应该怎么做?我问的原因是因为我正在编写一个简单的应用程序来在游戏中绘制一些东西。这些东西都是2D或文本,例如帧率信息、自定义十字准线、时钟等。我知道最好的方法是Hook并使用渲染器/游戏native使用的任何内容,无论是opengl还是direct3d,但我正在查看GDI,因为AFAIKopengl和D3D都位于我正在使用的设备上下文中希望可以用GDI画出来。 最佳答案 你通常不能直接这样做。理论上,当且仅当OpenGL/DirectX绘图是使用单缓冲

windows - 如何以编程方式在 Windows 上触发 Flip 3D?

如何在WindowsVista和7上以编程方式触发Flip3D?有这方面的API吗?如果有,它叫什么?我在哪里可以找到相关函数?(我需要一个具体的答案,例如实际功能的Web链接,而不是像“哦,它在DirectX中”这样的通用内容。)在相关节点上,我有一个罗技鼠标,它有一个调用Flip3D的“文档翻转”按钮(然后我可以按向上/向下键翻阅结果。)我很好奇他们是否使用官方的WindowsAPI或者是否有一些低级的hackery正在进行。 最佳答案 你需要从dwmapi运行一个函数遗憾的是没有合适的功能名称只有序号105您可以通过运行对话框

C++ Vector 给出难以置信的意外值(value)

我有这个代码:std::vectorloc;loc.push_back(cpx);loc.push_back(cpy);loc.push_back(play.GetSize().x);loc.push_back(70);std::cout在我正在制作的游戏中,但即使当我打印loc[2]和loc[3]的值时,它们与它们应该的值完全不同,当我运行这段代码时,我得到loc[3]等于70070而不是70.有人知道如何解决这个问题吗? 最佳答案 你还有一个cout没有endl或\n您忘记删除的代码中的某处。那个打印700,而70是代码示例中最

windows - 找不到任何 Direct3D 12 示例

现在我想了解Directx12并阅读msdn.它说WorkingsamplesareinstalledwiththeSDKwhichdemonstratethefollowing:我在这里找到了d3dC:\ProgramFiles(x86)\WindowsKits\10\Redist\D3D但是Directx12的样本在哪里?谢谢。 最佳答案 Microsoft发布了一个包含多个DirectX12示例的GitHub存储库here 关于windows-找不到任何Direct3D12示例,我

Unity3D---快捷键

学习目标:Unity3D—快捷键学习内容:`Q平移场景视图W移动E旋转R缩放Scence面包按-F场景视图聚焦选定物体(Hierarchy面板双击物体Z以轴点/中心旋转X全局坐标/局部坐标Ctrl/Cmd+P播放或停止Ctrl/Cmd+Shift+P暂停或恢复Ctrl/Cmd+Shift+B打开BulidSetting窗口Ctrl/Cmd+B发布并运行Ctrl/Cmd+Shift+N创建空对象Alt/opt+Shift+N创建子对象Ctrl/Cmd+D创建副本Ctrl/Cmd+Shift+F将选中的摄像机与Scene视图对齐(alignwithview)Ctrl/Cmd+Alt/opt+F将选

c++ - D3D11CreateDeviceAndSwapChain 未解析的外部

这完全让我发疯。当我编译我的程序时,我收到以下错误消息:错误LNK2019:无法解析的外部符号_D3D11CreateDeviceAndSwapChain@48我知道我拥有所有正确的lib/和include目录(x86),并且我已经将问题追踪到这样一个事实:如果我转到定义(F12),我会得到两个符号,一个用于DirectXSDK安装目录,一个位于“c:\ProgramFiles(x86)\WindowsKits\8.0\Include\um”。对于我的生活,我不知道该做什么。我已经遍历了所有包含/排除目录,但无法解析它,而且我不知道该怎么做。谁能帮帮我? 最

c++ - 为什么 std::vector::at() 即使启用了优化也需要边界检查?

Windows中的libstdc++-6.dll有问题。这段代码:#include#includeintmain(){std::vectorx(10);std::cout编译很好,但是当我运行它时,我收到一条错误消息说Theprocedureentrypoint_ZSt24__throw_out_of_range_fmtPKczcouldnotbelocatedinthedlllibstdc++-6.dll我的问题是不是如何解决这个问题(这很可能是dll的错误版本,我只需要修复PATH)。然而,这让我意识到了一些意想不到的事情:当我打开优化时,上面的代码运行良好(不管错误的dll),即