diff options
author | Jarryd Beck <jarro.2783@gmail.com> | 2020-01-17 00:03:57 +0300 |
---|---|---|
committer | Jarryd Beck <jarro.2783@gmail.com> | 2020-01-17 00:03:57 +0300 |
commit | 6fa46a748838d5544ff8e9ab058906ba2c4bc0f3 (patch) | |
tree | 150ab7d6f90187c61f6f557007b5c509439794ce | |
parent | 943cdcfbbaa205f9a1789d96c7a57accfabcd233 (diff) |
Don't return parse result
Fixes #219. The example was wrong as ParseResult can't be returned out
of scope of the options parser.
-rw-r--r-- | src/example.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/example.cpp b/src/example.cpp index 5eb6ca2..c94025b 100644 --- a/src/example.cpp +++ b/src/example.cpp @@ -26,7 +26,7 @@ THE SOFTWARE. #include "cxxopts.hpp" -cxxopts::ParseResult +void parse(int argc, char* argv[]) { try @@ -149,9 +149,10 @@ parse(int argc, char* argv[]) std::cout << "Arguments remain = " << argc << std::endl; - return result; - - } catch (const cxxopts::OptionException& e) + auto arguments = result.arguments(); + std::cout << "Saw " << arguments.size() << " arguments" << std::endl; + } + catch (const cxxopts::OptionException& e) { std::cout << "error parsing options: " << e.what() << std::endl; exit(1); @@ -160,9 +161,7 @@ parse(int argc, char* argv[]) int main(int argc, char* argv[]) { - auto result = parse(argc, argv); - auto arguments = result.arguments(); - std::cout << "Saw " << arguments.size() << " arguments" << std::endl; + parse(argc, argv); return 0; } |