MoreEffective上的一个static_cast问题
描述: 一个网有推荐了一篇文章,我就去看了,看到过程发现了一个问题
//这代码据说是More Effective
//删除一个数组, 但是首先记录一个删除信息
void deleteArray(ostream& logStream, BST array[])
{
logStream << "Deleting array at address "
<< static_cast(array) << '\n';
delete [] array;
}
stacic_cast(array) ???第一次见过
int *p=new int(21);
static_cast<void*>(p); //倒是见过
delete p;
请问这代码对不对??
这是什么用法,我已经官网看过,没有这种用法!!1
[解决办法]
因为你看的文章是在网页上的, 在 HTML 代码里, <> 表示的是排版的标记, 比如 <br> 换行, <p> 分段等等.
很显然, 你看的这个网站有问题, 没有对文章中的 <> 符号做特殊处理, 被浏览器认为是一个标记了 <void*> 虽然不是一个有效的标记, 但是浏览器也不会在显示里面的内容了.
所以, 你应该打开那个网站, 然后查看它的源代码, 在里面找 static_cast, 就可以看到后面跟的 <void*> 或者其他什么了.