Search
Write a publication
Pull to refresh
0
0
Send message

Тему с goto уже давно переживали и съели. Есть прекраснаяальтернатива позволяющая фильтровать ветвления и с возможностью выполнить обязательный код

bool SendRequest(<...>){
  bool result = false;
  HINTERNET internet = NULL;
  HINTERNET connect = NULL;
  HINTERNET request = NULL;
  
  do {
    internet = WinHttpOpen(<...>);
    if (!internet){
      break;
    }
    <...>
    connect = WinHttpConnect(<...>);
    if(!connect){
      break;
    }
    <...>
    request = WinHttpOpenRequest<...>);	
    if(!request){
      break;
    }
    <...>
    result = true;
  } while(false)

  if(internet){
    WinHttpCloseHandle(internet);
  }
  if(internet){
    WinHttpCloseHandle(connect);
  }
  if(internet){
    WinHttpCloseHandle(request);
  }

  return result;
}

Information

Rating
Does not participate
Registered
Activity