USRP Hardware Driver and USRP Manual: safe_main.hpp File Reference

| USRP Hardware Driver and USRP Manual Version: 4.8.0.makepkg-0-g308126a4 UHD and USRP Manual |

Loading...
Searching...
No Matches
Macros
safe_main.hpp File Reference
`#include <uhd/config.hpp>`
`#include <iostream>`
`#include <stdexcept>`

Go to the source code of this file.

## Macros
#define | UHD_SAFE_MAIN(_argc, _argv)

## Macro Definition Documentation

## ◆ UHD_SAFE_MAIN

#define UHD_SAFE_MAIN | ( |  | _argc,
|  |  | _argv )

Value:
_main(int, char*[]); \
int main(int argc, char* argv[]) \
{ \
try { \
return _main(argc, argv); \
} catch (const std::exception& e) { \
std::cerr << "Error: " << e.what() << std::endl; \
} catch (...) { \
std::cerr << "Error: unknown exception" << std::endl; \
} \
return ~0; \
} \
int _main(_argc, _argv)

Defines a safe wrapper that places a catch-all around main. If an exception is thrown, it prints to stderr and returns. Usage: int UHD_SAFE_MAIN(int argc, char *argv[]){ main code here }

Parameters

  _argc | the declaration for argc
  _argv | the declaration for argv