擅长:python、mysql、java
<blockquote>
<p>Is there an advantage/reason to having some of the functions not take a <code>const char*</code>?</p>
</blockquote>
<p>不,看起来像是图书馆设计上的疏忽,或者,就像你说的,遗留问题。不过,他们至少可以让它保持一致!在</p>
<blockquote>
<p>My understanding is that if the function can take a string literal, it cannot change the <code>char*</code> so the <code>const</code> modifier would just be reinforcing this.</p>
</blockquote>
<p>没错。他们的文档还应该指定函数参数(或者更确切地说,参数的指针对象)在函数调用期间不应该被修改;唉,它目前没有这样说。在</p>
<blockquote>
<p>I also believe that the <code>const</code> distinction is not as important for C (for which the API was written) than it is in C++.</p>
</blockquote>
<p>嗯,不是,至少据我所知。在</p>
<blockquote>
<p>The way I see it, I can either one of the following (I am currently doing the first)</p>
</blockquote>
<p>(好的)</p>
<blockquote>
<p>Which is the best method do use?</p>
</blockquote>
<p>好吧,<code>const_cast</code>至少会确保你是<em>唯一的</em>修改<code>const</code>-的,所以如果你必须选择,我会同意。但是,真的,我不会太在意这个。在</p>