为什么下面程序不能在VC6.0下通过编译?
双杯献酒 2003-12-30 11:13:43 // 为什么下面程序不能在VC6.0下通过编译?
#include "stdafx.h"
class A
{
public:
int Fun(int x) {return x+x;}
int Fun(int* p) {return *p * *p;}
};
class B : public A
{
int Fun(int* x){return *x;}
int Fun100()
{
// 为什么不能用 int A::Fun(int x)
return Fun(100);
}
};
int main(int argc, char* argv[])
{
return 0;
}
//编译信息
// --------------------Configuration: Main - Win32 DebugCompiling...
// Main.cpp
// E:\Projects\DEMO\Main\Main.cpp(16) : error C2664: 'Fun' : cannot convert parameter 1 from 'const int' to 'int *'
// Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
// Error executing cl.exe.
// Main.exe - 1 error(s), 0 warning(s)