什么叫“间接寻址级别不同”,这错误什么意思。麻烦老大们帮忙解释下。
用强制类型转换可以解决,但我想知道这是为什么错,第一次见到这错误
#include <iostream>
using namespace std;
class test
{
public:
test(int* pi)
{
this->pi=pi;
}
private:
int* pi;
};
int main()
{
int *p = new int (8);
test(p);
}
c:\documents and settings\wengtn\my documents\visual studio 2005\projects\werwer\werwer\weeeeer.cpp(60) : error C2040: “p”: “test”与“int *”的间接寻址级别不同
c:\documents and settings\wengtn\my documents\visual studio 2005\projects\werwer\werwer\weeeeer.cpp(60) : error C2512: “test”: 没有合适的默认构造函数可用