我有一个char*,实际上是10位数字符串.我基本上把它放在我的函数中并吐出代码.现在我已经创建了一个静态库,我将与其他人共享...问题是(我正在使用c ++)
对于我将在我的标题中提供的那个api的定义,我只是把const char*const或不放.我不确定我是否需要这样做.我只想到他们是否打算使用那个我不想让他们错误地在他们的代码中发送一些错误的指针或值到我的代码.所以为了保护自己我正在制作它,就像我上面说的那样正确的做法?是如何使用const?
制作const并不意味着你不会得到一个糟糕的指针.没有什么可以做的来保护自己免受这种伤害.您可以检查NULL,但不能检查已释放的指针或已损坏的指针.
const说的是你的函数承诺不会改变指向的数据.这对调用者来说很有用.此外,在调用者只能访问const指针的情况下,您将为它们保存一个强制转换或复制来调用您的函数.
正常用法是
void makeCode(const char* s);
Run Code Online (Sandbox Code Playgroud)
这意味着s指向的值不会改变.