我正在尝试使用套接字发送数据包,但是它引发了错误。
从omnetpp :: cPacket *到inet :: Packet *的无效转换[-fpermissive]
我的代码如下:
cPacket *payload = createPacket();
//Packet* *payload = createPacket();
payload->setTimestamp();
emit(sentPkSignal, payload);
socket.sendTo(payload, destAddr, destPort);
numSent++;
我尝试过使用check和cast。我是C ++和OMNET ++的新手
答案 0 :(得分:2)
好吧,omnetpp::cPacket
和inet::Packet
是完全不同的两件事,您不能将它们强制转换或转换为另一种。使用INET 4时,必须创建一个inet::Packet
并将其传递给socket.sendTo()
调用。
检查现有应用程序的代码,以了解如何创建inet :: Packets。即https://github.com/inet-framework/inet/blob/v4.1.2/src/inet/applications/udpapp/UdpBasicApp.cc#L108