c++ error C2440: 来自“=”: 没法从“int *”转换为“int”

C++

1个回答

写回答

Ruby如

2026-02-13 20:20

+ 关注

C++
C++

这个错误消息通常发生在一个使用了引用和指针混合操作的代码中。在C++中,对于一个变量而言,可以使用指针来访问它,也可以使用引用来间接地访问它。但是,如果指针和引用同时用来访问同一个变量,在赋值时就会发生冲突。解决这个问题的方法是,在定义函数参数时,明确使用指针或者明确使用引用,而不能同时使用指针和引用。另外,在函数内部修改参数时也要注意使用合适的数据类型和操作符来避免指针与引用之间的冲突。以下是一个示例代码:C++class Test {public: Test(int i):x(i){} int x;};

void f(Test* t, int i){ t->x = i; // 正确 t->t->x = i; // 错误}

举报有用(0分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号