草庐IT

public_send

全部标签

c++ - 来自两个以上字符串的最长公共(public)子字符串 - C++

我需要从C++中的一组文件名中计算最长的公共(public)子字符串。准确地说,我有一个std::strings的std::list(或QT等价物,也很好)charconst*x[]={"FirstFileWord.xls","SecondFileBlue.xls","ThirdFileWhite.xls","ForthFileGreen.xls"};std::listfiles(x,x+sizeof(x)/sizeof(*x));我需要计算所有字符串的n个不同的最长公共(public)子串,在这种情况下,例如对于n=2"File"and".xls"如果我可以计算最长的公共(publi

c++ - 公共(public)接口(interface)方法的私有(private)实现

这个问题在这里已经有了答案:OverridingpublicvirtualfunctionswithprivatefunctionsinC++(7个答案)关闭6年前。我遇到过一段代码,其方法通过公共(public)接口(interface)公开,而实现是私有(private)的。我不确定预期的行为应该是什么。简化示例:#includeclassInterface{public:virtual~Interface(){}virtualvoidmyIfMethod()=0;};classDerived:publicInterface{private:voidmyIfMethod(){std

C++ 套接字 Send() 线程安全

我正在为最多1000个客户端编写套接字服务器,服务器是关于我的游戏,我使用非阻塞套接字和大约10个同时从不同套接字接收数据的线程(第一个线程从0-100接收,第二个从101-200等等..)但是如果线程1要向所有1000个客户端发送数据,线程2也想同时向所有1000个客户端发送数据,这样安全吗?数据是否有可能在另一方(客户端)被弄乱?如果是,我想唯一可能发生的问题是有时客户端会收到2个或10个数据包作为1个数据包,对吗?如果是,是否有任何解决方案:( 最佳答案 处理多个套接字的通常模式是使用专用线程轮询I/O事件select(2),

c# - 我有 .H 文件,如何将其公共(public)方法打开到 .Net 库?

我有这样的.H文件(来自here)/*FFmpegsimpleEncoder*/#ifndef__VIDEO_ENCODER_H__#define__VIDEO_ENCODER_H__#include"ffmpegInclude.h"#include#includeclassVideoEncoder{private://outputfilenamestd::stringoutputFilename;//outputformat.AVOutputFormat*pOutFormat;//formatcontextAVFormatContext*pFormatContext;//videos

c++ - 检查 write()/send() 是否可以无阻塞地处理整个缓冲区,否则失败(没有部分写入)

我正在使用SOCK_SEQPACKET连接,确保通过单个write()/send()调用发送整个缓冲区对我来说至关重要。我还在使用旨在通过一次调用处理完整数据block的设备驱动程序。同时,我想处理write()/send()由于缓冲区溢出而阻塞的情况,即我想反馈当前实现是否在这里遇到瓶颈。我正在使用glibc,Linux2.6。我需要实现一个接受缓冲区的方法,它要么完全发送一个缓冲区,要么指示由于阻塞导致的失败(即系统缓冲区溢出)。看起来使用send(...,MSG_DONTWAIT)/fcntl(...,O_NONBLOCK)不是解决方案,因为它们在报告EWOULDBLOCK/EA

c++ - Qt : send Key_Return and Key_Delete events

我正在使用QtEmbedded开发虚拟键盘,但遇到了一个小问题。事实上,我使用SignalMappers将键映射到键盘事件,以便在QTextEdit小部件中显示文本。一切正常,除了两个事件:Key_Return和Key_Delete;我不知道我做错了什么,也许你会有想法。这是一个经典的代码,发送字符:voidVirtualKeyboard::SendChar(intindex){QCharcharToSend(letters_.at(index)->text().at(0));//Getcharserver_->sendKeyEvent(charToSend.unicode(),QEv

c++ - 多个类,相同的公共(public)接口(interface)

好的,昨晚之后我决定改写我的问题以便于阅读。我有2个类(class),陆军和战斗组。下面是类,尽管缺少一些部分:classBattlegroups{private:battlegroupbattlegroupobject[100];public:voidAddBattleGroup();//addabattlegroupobjecttothearrayvoidremovebattlegroup();//removeabattlegroupobjectsfromthearray};classArmy{private:battlegroupsbattlegroupsobject;publi

c++ - MVAPICH 在 MPI_Send 上挂起大于急切阈值的消息

在c++/mpi(mvapich)中有一个简单的程序,发送一个float类型的数组。当我使用MPI_Send、MPI_Ssend、MPI_Rsend时,如果数据的大小超过急切阈值(在我的程序中为64k),则在调用MPI_Send期间我的程序挂起。如果数组小于阈值,程序运行正常。源代码如下:#include"mpi.h"#include#includeintmain(intargc,char*argv[]){intmype=0,size=1;MPI_Init(&argc,&argv);MPI_Comm_rank(MPI_COMM_WORLD,&mype);MPI_Comm_size(MP

C++ 未解析的外部符号(public static int)

当我尝试编译它时,我得到了这个链接器错误:LNK2001unresolvedexternalsymbol"public:staticintHooksXD::night"(?night@HooksXD@@2HA)Theheaderisthis:classHooksXD{public:staticvoidXD3();staticintnight;staticintnight2;};变量是公共(public)的而不是私有(private)的,因为我需要从不在同一个类中的其他voids访问它们。cpp文件:HooksXDlmao;voidHooksXD::XD3(){//thisvoidwil

c++ - 将公共(public) block 提取到 C++ 中的函数中

在处理C++代码时,我经常遇到一些问题。假设我有一个方法执行X、Y,然后执行Z。现在我想介绍另一个应该执行X、Y'、Z的方法。如果那是普通的旧C代码,那么我会使用通用代码创建函数X()和Z(),将它们声明为static以便编译器现在可以在需要时内联它们,因为此“模块”之外的代码无法调用它们。作为API一部分的方法将如下所示intM(args){X(foo);//thatcoulde.g.be"checkargsarevalid"./*herecomesM-specificcode*/Z(bar);//thatcoulde.g.be"update_state"}intM2(args){X