[英]use of static sockaddr_in struct in c++
I want to implement a base class that would act as interface to send UDP message for derived classes. 我想实现一个基类,该基类将充当接口以为派生类发送UDP消息。 So, I want to declare "sockaddr_in" as static so that only one copy would be available among derived classes.
因此,我想将“ sockaddr_in”声明为静态的,以便在派生类中只有一个副本可用。
If I declare "sockaddr_in" as static then how can I initialize this structure? 如果我将“ sockaddr_in”声明为静态,那么如何初始化该结构?
The same way you initialize any other variable. 初始化任何其他变量的方式相同。 You just have to qualify it so the compiler can find it:
您只需要限定它,以便编译器可以找到它:
class MyClass
{
public:
static sockaddr_in address;
};
sockaddr_in MyClass::address = {0};
void doSomething()
{
MyClass::address.sin_family = AF_INET;
MyClass::address.sin_addr.s_addr = ...
MyClass::address.sin_port = ...
...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.