E.g。以下将无法编译:
auto foo = [](const char**) {};
char* ptr = nullptr;
foo(&ptr);
视觉工作室说,有一个失去限定符的转换。 Clang说cannot initialize a parameter of type 'const char **' with an rvalue of type 'char **
“。也许我的大脑今天不工作,但为什么这个被禁止?char*
可以隐含地转换为const char*
答案 0 :(得分:0)
foo
可以为指针分配const char*
,这显然很糟糕。