void表示“無類型”,void*表示“無類型指針”。
void的作用如下:
-
對函數返回類型的限定,表示函數無返回
-
對函數參數列表的限定,表示函數無參數
void dispaly(string msg){ //無返回類型
cout << msg << endl;
}
int main(void){ //無參數列表
string str = "hello";
display(str);
return 0;
}
-
void*指針可以用來存放任何類型指針和對象的地址
可以將任意類型指針和對象的地址賦予void*,而無需執行強制類型轉換。
void* vp;
int* ip = &obj;
vp = ip;
若函數可以接受任何類型指針或者返回任何類型的指針,應該講將其聲明爲void*。
//可以返回任意類型的指針,接受任意類型的指針
void* func(void*){}
-
不能聲明void類型的變量
-
在未對void*指針賦予確定類型指針前不允許對void*指針進行操作