如何将"主参数"传递给成员函数

How to pass a 'main-parameter' to a member-function

本文关键字:成员 函数 参数      更新时间:2023-10-16

我正在用winsock库编写一个小型控制台messanger,但是我如何通过'char* argv []'参数从main到会员函数?

我已经定义并声明了一个类,其中所有设置客户端都完成(启动套接字,初始化...(。此类写在另一个文档中,但是当函数在main((

中调用函数时,我需要使成员功能能够访问char* argv []参数
int CWinsock::Connect(/*pass argv here*/) {
  printf("Connect to portnPort: ");
  std::cin >> m_port;//get port
  memset(&m_addr, 0, sizeof(SOCKADDR_IN));
  m_addr.sin_family = AF_INET;
  m_addr.sin_port = htons(m_port);//Connect to port
  m_rc = getAddrFromString(argv[1], &m_addr);//Get the IP adress 

ARGV参数在

上方使用
if (m_rc == SOCKET_ERROR) {
    printf("IP not found!n");
    return 1;
}else
    printf("IP found!n");
...
}//Connect

您可能只需要

int CWinsock::Connect(const char* adress)
{
    //..
    m_rc = getAddrFromString(adress, &m_addr);//Get the IP adress 
    //..
}

main

int main(int argc, char**argc)
{
    // ..
    CWinsock winsock{/*..*/};
    // ..
    int res = winsock.Connect(argv[1]);
    // ..
}

似乎很简单

int CWinsock::Connect(char** argv) {

或(同一事物(

int CWinsock::Connect(char* argv[]) {

我想念什么吗?