例如,如何在 C 中实现这个 C++ 代码?
void someFunction(type *&outParamOnly) ;
returnType someOtherFunction() ;
...
returnType someOtherFunction()
{
type *data = NULL ;
someFunction(data) ;
...
}
...
void someFunction(type *&outParamOnly)
{
bool condition ;
int array_len ;
...
if(condition) // variable's value passed to this function stays as it was
return ;
...
outParamOnly = new type[array_len] ; // value is moddified and it's reflected in 'someOtherFunction'
...
}
...
我问是因为我不知道如何创建这样的等价物。复杂吗。。事实上,我对 C 了解不多,但对 C++ 语法等了解更多。我习惯用 C++ 编写,一旦我尝试 C 来感受差异,我在尝试实现我想要的东西时做得不好。我期望得到肯定的回答——可以创建一些等价物,但它会比在 C++ 中运行得更快还是更慢?请回答。