字符是什么意思?

What does char&* mean?

本文关键字:意思 是什么 字符      更新时间:2023-10-16

这来自Autodesk公司的AutoCAD 2013(ObjectARX SDK)的官方文档:

ObjectARX for AutoCAD 2013:自述->技巧和技巧->释放*作为非常量指针返回的字符串:*

当调用返回非常量字符串指针的方法时(对于例如,AcDbSymbolTable::getName(char&* pName)),您应该释放返回字符串占用的内存。例如:

// The getName() call should be followed by a call to
acutDelString(pLtName);pLtTableRcd->getName(pLtName);
// ... other code
acutDelString(pLtName);

请注意,一些ObjectARX示例文件缺少对free的调用内存,因此它们将显示内存泄漏。使用样品时在您自己的代码中,请确保正确释放内存。

下一个参数类型是什么意思:

AcDbSymbolTable::getName(char&* pName))

它是指向char&的指针吗?在什么意义上?什么时候使用这样的构造?

谢谢。

根据顺时针/螺旋规则,pName是指向char的引用的指针。

我想说,有一个指向引用的指针没有多大意义。另一种方法(引用指针)可能很有用,因为您可以在函数内更改指针。

这是文档中的一个拼写错误;它们的意思是CCD_ 5。

如果你是这样读的,那么这段话的其余部分就完全有意义了:getName是一个函数,它通过声明为字符串引用的out参数来检索字符串(char *)。它甚至说必须使用acutDelString释放返回的"字符串"。

如果您查看头文件中的实际声明,您很可能会发现声明为char*&的参数。