【发布时间】:2016-09-08 19:54:37
【问题描述】:
考虑
int *p;
auto & pp = p;
pp = (decltype(pp))malloc(sizeof(decltype(*pp))); //line1
pp = (decltype(p))malloc(sizeof(decltype(*p))); //line2
为什么line1 是不可接受的,但line2 可以暗示它们属于不同类型。
为什么pp 和p 不是同一类型?
【问题讨论】:
-
你知道
decltype(p)和decltype(pp)是什么吗?如果是,答案应该是显而易见的。如果不是,那个应该是你的问题。 -
为什么要使用
mallocBTW? -
我敢打赌,您未能在帖子中包含的错误会告诉您确切的原因。
-
@KerrekSB,问题是为什么
pp和p不是同一类型 -
@user4581301:那么那应该是你的问题。