草庐IT

direct-buffer

全部标签

c++ - 在 C++ 中比较 buffer 和 const char*

将内存缓冲区与常量字符串进行比较的正确C++方法是什么-strcmp(buf,"sometext")?我想避免由于创建临时std::string对象而导致不必要的内存复制。谢谢。 最佳答案 如果您只是检查相等性,您可以使用std::equal#includeconstchar*text="sometext";constintlen=8;//lengthoftextif(std::equal(text,text+len,buf))...当然,如果您的缓冲区可以小于文本,这将需要额外的逻辑

c++ - 哪些库必须与 Protocol Buffer 生成的 C++ 代码链接

我有来自mytest.proto文件的mytest.cc和mytest.h输出,但我找不到关于如何为此使用g++编译对象的任何引用。(.proto很好,因为我可以使用Python)g++mytest.cc-l????????要包含哪些库? 最佳答案 我想你可能需要链接到libprotobufg++mytest.cc-lprotobuf-omytest 关于c++-哪些库必须与ProtocolBuffer生成的C++代码链接,我们在StackOverflow上找到一个类似的问题:

c# - 使用 Direct3D 时使用 C++ 而不是 C# 有什么优势吗?

在使用Direct3D时使用C++而不是C#有什么优势吗?我为C++和DirectX找到的教程都使用Direct3D(据我所知是托管的)。同样,我找到的所有C#教程都是针对Direct3D的。Direct3D是托管的吗?在这两种语言中使用D3D有什么区别吗? 最佳答案 DirectX是完全原生的。您对它的管理可能有的任何印象都是完全错误的。有托管的包装器允许您从托管代码使用DirectX。此外,DirectX被编程为可以从C++或C或类似语言访问。如果您查看SlimDX项目,他们遇到了很多问题,尤其是资源收集方面的问题,因为C#并不

go消息队列RabbitMQ - 订阅模式-direct

1.发布订阅在Fanout模式中,一条消息,会被所有订阅的队列都消费。但是,在某些场景下,我们希望不同的消息被不同的队列消费。这时就要用到Direct类型的Exchange。在Direct模型下:队列与交换机的绑定,不能是任意绑定了,而是要指定一个RoutingKey(路由key)消息的发送方在向Exchange发送消息时,也必须指定消息的RoutingKey。Exchange不再把消息交给每一个绑定的队列,而是根据消息的RoutingKey进行判断,只有队列的Routingkey与消息的Routingkey完全一致,才会接收到消息2.绑定绑定可以采用额外的routing_key参数。为了避免

c++ - 使用 C 和 C++ 的 Protocol Buffer

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭11年前。现在我有一个带有ProtocolBuffer的c/s程序(使用c++)。我想用c重写服务器。但是在.proto文件中有很多服务。该程序实现了rpc本身,而protocolbuffers-c提供了另一个。我希望有人向我展示如何实现此示例。service{rpcfoo(what)returns(what);}客户端用c++,服务器用c,怎么写这个服务。

direct3d-msaa-抗锯齿算法-教程-涉及概念解析

文章目录1.交换链2.表面3.IDXGIFactory4.ID3D10RasterizerState5.ID3D10Resource6.交换链GetBuffer函数7.ID3D10Device中ResolveSubresource函数8.IDXGISurface9.ID2D1RenderTarget中的CreateSharedBitmap函数10.ID3D10RenderTargetView1.交换链交换链(SwapChain)在计算机图形学和窗口系统中是一个核心概念,它主要用于管理一组缓冲区(通常是帧缓冲区),这些缓冲区用于存储渲染的图像,并且有序地与屏幕显示进行交替更新。窗口系统中的交换链

c++ - 是什么导致来自 WinHttpSendRequest 的间歇性 SEC_E_BUFFER_TOO_SMALL 错误?

我有一个工具可以针对具有相同header、相同帖子正文等的相同URL执行HTTPSPOST命令多次迭代。我遇到的情况是,对于某些测试人员,WinHttpSendRequest()函数经常失败,随后对GetLastError()的调用返回SEC_E_BUFFER_TOO_SMALL(0x80090321),记录在此处:COMErrorCodes(SecurityandSetup).这不是WinHttpSendRequest()的记录错误代码,相当广泛的谷歌搜索也没有为此找到任何东西。我已经四重检查了我提供的WinHttpSendRequest()输入是否正确有效,并且这些输入连续工作了数

c++ - 为什么 Direct3D 没有自己的顶点结构?

我一直想知道为什么我们必须始终定义D3DVERTEX背后的原因。是因为微软想允许有机会把它放在一个类中并重载运算符,还是有其他原因?谢谢 最佳答案 这样您就可以使用对您的应用程序方便的任何内容。如果你需要法线作为顶点的一部分,你可以拥有它。如果不需要法线,则每个顶点可节省12个字节。如果您需要颜色信息、纹理坐标、高光参数等,您可以根据您的具体需要选择是否定义它们。如果Microsoft提供“D3DVERTEX”结构,您要么拥有500个不同的版本,具有不同的字段组合,要么您拥有一个包含所有可能值的巨大版本,这会占用您的带宽。

c++ - MPI_ERR_BUFFER : invalid buffer pointer

这个错误最常见的原因是什么MPI_ERR_BUFFER:invalidbufferpointerMPI_Bsend()和MPI_Rcev()调用的结果是什么?当并行进程数较少( 最佳答案 扩展我之前的评论:MPI中的缓冲可以在各种情况下发生。MPI库可以在内部缓冲消息以隐藏网络延迟(通常只对不超过实现相关大小的小消息进行缓冲)或者用户可以通过使用任何缓冲发送操作来强制执行缓冲MPI_Bsend()和MPI_Ibsend()。用户缓冲与内部缓冲不同:首先,由MPI_Bsend()或MPI_Ibsend()发送的消息总是被缓冲的,而内部

c++ - 为什么在使用 `using directive` 时 ADL 不工作?

Hereisasimilarquestion,但在这个问题上它有效,但是在以下情况下它失败了,为什么?namespaceA{intk;}namespaceB{classtest{};voidk(consttest&){/*dosomething*/}}intmain(){usingnamespaceA;k(B::test());//compileerror}错误信息是:“‘A::k’不能用作函数”(gcc6.3.0)也就是说,编译器不会尝试执行ADL,也永远不会在namespaceB中找到voidk(consttest&)不过,我认为ADL应该在这种情况下工作,因为上面的代码不属于以下