小编anu*_*v16的帖子

C++,需要错误原因:无法将参数1从'char*'转换为'const char*&'

乳清我们不能将指针转换为字符 - > TO->对指向常量字符的指针的引用

当我们调用foo_ptr时,我有兴趣知道语法错误的原因.当允许foo_char时,为什么不foo_ptr.
[更新1.]我很高兴知道有效的原因foo_char(),为什么foo_ptr()不工作..当指针出现在图片中时会发生什么.

[更新2.]也没有在Dev C++编译器版本4.9.9.2中工作..

//code
//OS : Win XP
//Env: VC++ 2008 

//NOT ALLOWED
void foo_ptr(const char * & ptr) //reference to a pointer to a constant character         
{         
        return;         
}        


//allowed        
void foo_char(const char & p_Char) //reference to a constant character        
{         
        return;        
}        

int main()        
{        
        char ch = 'd';        
        char *ptr =  "anu";        

        foo_char(ch);         
        foo_ptr(ptr); //NOT ALLOWED syntax error, vc++, 2008        

        return 0;        
}        
Run Code Online (Sandbox Code Playgroud)

c++ pointers reference visual-c++

12
推荐指数
2
解决办法
3916
查看次数

标签 统计

c++ ×1

pointers ×1

reference ×1

visual-c++ ×1