Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C/C++에서 void 포인터를 삭제하는 것이 안전합니까?

<시간/>

Void 포인터는 어떤 데이터 유형과도 연결되지 않은 포인터입니다. 저장소의 일부 데이터 위치를 가리키는 것은 변수의 주소를 가리키는 것을 의미합니다. 범용 포인터라고도 합니다.

C/C++에서 void 포인터를 삭제하는 것은 안전하지 않습니다. delete는 파괴하려는 객체의 소멸자를 호출해야 하고 유형을 모르는 경우에는 불가능하기 때문입니다.

다음은 void 포인터의 간단한 예입니다 -

예시

#include<stdlib.h>
int main() {
   int a = 7;
   float b = 7.6;
   void *p;
   p = &a;
   printf("Integer variable is = %d", *( (int*) p) );
   p = &b;
   printf("\nFloat variable is = %f", *( (float*) p) );
   return 0;
}

출력

Integer variable is = 7
Float variable is = 7.600000