0

I am previewing Ceres library of Google and have come across this declaration. I even thought this is wrong documentation, but the source code shows no difference:

bool Evaluate(double const* const* parameters,
                        double* residuals,
                        double** jacobians) const = 0;

As a c++ learner, I have to start step by step by breaking down this declaration:

1) what's with the double const* const*? shouldn't it be const double**?

2) the trailing part is const = 0? what does this mean?

I don't even know where to start to search for such an answer. Any standard documentation of c++?

Thanks!

TSL_
  • 2,049
  • 3
  • 34
  • 55
  • 1
    To answer your second question, it is a [pure virtual function](https://stackoverflow.com/questions/2652198/difference-between-a-virtual-function-and-a-pure-virtual-function) – Cory Kramer Dec 05 '15 at 16:40
  • Thank you for both answers! it saves me lots of time to search for the keywords. I have no idea what they are called! – TSL_ Dec 06 '15 at 10:58

0 Answers0