是否可能有一个指针指向指向第一个指针所指向的变量的指针
Is it possible to have a pointer to a pointer point to the variable pointed by the first pointer?
这样行吗:
Class MyClass{
public:
void Foo();
private:
MyClass** ppMyClass;
};
MyClass* pMyClass = new MyClass;
ppMyClass = &pMyClass;
delete pMyClass;
ppMyClass-> Foo();
如果它不能工作,将一个指针赋值给另一个指针并使用它来访问它所指向的类的函数的正确方法是什么?问题是,我想知道错误是否由内存泄漏引起:为什么我在此代码中得到WSAENOTSOCK错误?
那么,这行得通吗?
不,ppMyClass->Foo();
不能工作,因为ppMyClass
是MyClass**
而不是MyClass*
。
理论上,您可以执行(*ppMyClass)->Foo()
,尽管在您的特定代码片段中,这将是未定义的行为,因为您在delete
和pMyClass
之前立即执行。
相关文章:
- 指针变量在 cout 函数中不起作用
- 如何将指针变量作为引用参数传递?
- 有没有办法在同名类 (c++) 中为对象分配一个指针变量
- 我试图了解在异或操作后指针变量正在更改
- 调用带有指针对象错误的指针变量
- 如何在 cuda 中将结构的指针变量从主机复制到设备
- 非指针变量和类成员上的新放置
- 线路抑制状态错误 C4703 可能未初始化的局部指针变量"back"已使用
- 全局外部指针变量在 DLL 中不可见
- 如何访问在 c++ 中在类内声明的结构类型指针变量?
- C++ 中指针变量的内存释放
- 使用指针变量打印特定的数组变量
- 如何使用构造函数初始化内存地址(指针变量)?
- 如何释放为指针变量本身提供的内存?
- 如果地址已知,如何获取指针变量的名称
- 如何处理参数中的基类和指针变量
- 指针变量 在数组中定位零
- 隐式指针变量,在自动定义中具有另一个指针变量
- 为什么可以将Char指针变量初始化为字符串,而INT指针变量不能初始化到整数数组
- 错误 C4703 可能未初始化的局部指针变量'y'使用