上記のポインターを返す (出力) 引数を取得するこの関数にラッパーを記述する必要があるconst void* getData()
定数データへのポインターを返す関数があります。const void*
void wrapGetData([type] ppData) {
*ppData = getData();
}
は何[type]
ですか?getData() は const へのポインターを返すため、void ** は適合しません。
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 **
それが役立つことを願っています。
const void**
:
const void *getData() {
return nullptr;
}
void wrapGetData(const void** ppData) {
*ppData = getData();
}
int main() {
const void *p;
wrapGetData(&p);
}