From: stevenj Date: Mon, 5 Apr 2010 07:28:11 +0000 (-0400) Subject: catch a vector-size mismatch in C++ X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=4c3423b489646ba66fd44be6f1c7f2ba4802bdb9;p=nlopt.git catch a vector-size mismatch in C++ darcs-hash:20100405072811-c8de0-307c0f8c22e707816cbe2da178b2ff92fc6a596f.gz --- diff --git a/api/nlopt-in.hpp b/api/nlopt-in.hpp index a4d9144..cc09c44 100644 --- a/api/nlopt-in.hpp +++ b/api/nlopt-in.hpp @@ -109,6 +109,8 @@ namespace nlopt { return result(ret); } result optimize(std::vector &x, double &opt_f) { + if (o && nlopt_get_dimension(o) != x.size()) + throw std::invalid_argument("dimension mismatch"); return optimize(x.empty() ? NULL : &x[0], opt_f); }