gpt4 book ai didi

c++ - 指向常量的指针

转载 作者:行者123 更新时间:2023-11-30 00:37:06 25 4
gpt4 key购买 nike

我有一个函数const void* getData(),它返回一个指向常量数据的指针const void*我需要为这个函数编写一个包装器,它获取一个(输出)参数,它应该在其中返回上述指针。

void wrapGetData([type] ppData) {
*ppData = getData();
}

[type] 应该是什么?void ** 不适用,因为 getData() 返回指向 const 的指针

最佳答案

如果getData()返回void const *,那么[type]应该是void const * & :

void wrapGetData(void const * & ppData) 
{
ppData = getData();
}

注意&是必须的,因为ppData是输出参数。

你可以这样调用这个函数:

void const * output;

wrapGetData(output);

这与您必须调用函数的其他解决方案有点不同:

wrapGetData(&output); //if [type] = const void **

请注意,const void*void const* 是同一回事。所以不要混淆语法。


这与您必须调用函数的其他解决方案有点不同:

wrapGetData(&output); //if [type] = const void **

希望对您有所帮助。

关于c++ - 指向常量的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14183158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com