我有一个函数,我将迭代器传递给char*缓冲区(也是一个char*).该函数需要递增迭代器.无论如何,我发现将迭代器传递给函数的一个好方法是通过引用传递指针:
bool myFunction(unsigned char * &iter)
{
...
Run Code Online (Sandbox Code Playgroud)
但是,我听说这是不好的形式,可能会导致问题.这是我的同事建议我使用的方法:
typedef unsigned char * unsignedcharptr;
bool myFunction(unsignedcharptr &iter)
{
...
Run Code Online (Sandbox Code Playgroud)
在我看来,他们都在做同样的事情.这两种方法之间是否存在编译器差异(我使用的是Visual Studio 2005)?哪个是对的?