Commit 6fa46a748838d5544ff8e9ab058906ba2c4bc0f3

Authored by Jarryd Beck
1 parent 943cdcfb

Don't return parse result

Fixes #219. The example was wrong as ParseResult can't be returned out
of scope of the options parser.
Showing 1 changed file with 6 additions and 7 deletions
src/example.cpp
... ... @@ -26,7 +26,7 @@ THE SOFTWARE.
26 26  
27 27 #include "cxxopts.hpp"
28 28  
29   -cxxopts::ParseResult
  29 +void
30 30 parse(int argc, char* argv[])
31 31 {
32 32 try
... ... @@ -149,9 +149,10 @@ parse(int argc, char* argv[])
149 149  
150 150 std::cout << "Arguments remain = " << argc << std::endl;
151 151  
152   - return result;
153   -
154   - } catch (const cxxopts::OptionException& e)
  152 + auto arguments = result.arguments();
  153 + std::cout << "Saw " << arguments.size() << " arguments" << std::endl;
  154 + }
  155 + catch (const cxxopts::OptionException& e)
155 156 {
156 157 std::cout << "error parsing options: " << e.what() << std::endl;
157 158 exit(1);
... ... @@ -160,9 +161,7 @@ parse(int argc, char* argv[])
160 161  
161 162 int main(int argc, char* argv[])
162 163 {
163   - auto result = parse(argc, argv);
164   - auto arguments = result.arguments();
165   - std::cout << "Saw " << arguments.size() << " arguments" << std::endl;
  164 + parse(argc, argv);
166 165  
167 166 return 0;
168 167 }
... ...