Ayr*_*osa 5 c++ language-lawyer
const char*C++ 标准中的哪一段禁止从实参到形参的转换char*?我知道这是正确的。我只是想知道标准中哪里有这样的规定?
#include <iostream>
std::string message("Hello");
void my_log(char* pchar) {
std::cout << pchar << '\n';
}
void my_func(const std::string& message)
{
my_log(const_cast<char*>((&message)->c_str())); // Ok
my_log((&message)->c_str()); // Doesn't compile
}
int main() {
my_func(message);
}
Run Code Online (Sandbox Code Playgroud)
请参阅此处的实例。
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |