title: How to choose to set specify argument by name in a C++ function
body: <p>I'm writing a program like below</p>
  <pre><code>        class ocr
      {
      private:
      
      
      public:
          void char2mat(unsigned char* cimg, Mat &amp;mat, int h, int w, int channel);
      
          void rotate(Mat &amp;frame);
      
          void undistort(Mat &amp;frame);
  }
  </code></pre>
  <p>The problem is how am i able to set specific argument while running the program without writing down all the arguments.
  for example:,</p>
  <p>is it possible to use char2mat function like this:</p>
  <pre><code>char2mat(test_img, output, channel=16)
  </code></pre>
  <p>without claiming h and w which should be default arguments.
  Maybe a struct would deal with this?
  Once there's a greater function than this, how's that possible to run it with plenty and plenty arguments written every time?</p>