新加入了一个函数:
Function Type:
void
Function Declaration:
Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE)OK后出现如下错误:
This function's declaration will not match its definition:
Declaration: "Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE)"
Definition: "Set(int nMax, int nMin)"将Function Declaration:改为:
Set(BOOL bTj = TRUE,int nMax = -1,int nMin = -1)则无错误,这是为何?
Function Type:
void
Function Declaration:
Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE)OK后出现如下错误:
This function's declaration will not match its definition:
Declaration: "Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE)"
Definition: "Set(int nMax, int nMin)"将Function Declaration:改为:
Set(BOOL bTj = TRUE,int nMax = -1,int nMin = -1)则无错误,这是为何?
解决方案 »
- MFC CAsyncSocket的OnAccept函数不响应问题!急
- 想写一个压缩解压缩的小程序,用到动态调用cabinet.dll,FCI,FDI。向各位大侠请教动态调用cabinet.dll的方法?
- 当我用HttpSendRequest()发送一个请求后,我如何得到这个返回的页面是正确的
- 如何删除Windows系统的Icon缓存?
- 请问哪里有关于VC数据库(SQL 2000sever)编程的资料下载?
- *****《Programming Windows程式开发设计指南》Charles Petzold的中文电子版下载地址!!
- 自己给自己送分?
- 急急急--如何写这个ADO查询语句?
- 想编个oicq的聊天机器人!
- 请问如何为对话框加载菜单?(是基于对话框的MFC)。
- 一个关于CString的问题,谢谢
- 请问LN()和EXP()这两个函数在那个库里?
如果你事先定义了
Function Type:
void
Function Declaration:
Set(int nMax = -1,int nMin = -1)
然后再加入你如上的定义那就一定会出现问题,
原因很简单:
比如你有如下调用:
Set();
你能告诉我你想调用只有两个参数的Set(int nMax = -1,int nMin = -1),
还是想调用三个参数的Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE)呢,
也许你知道,但是编译器却无法知道!
解决办法只能是重新考虑一下你的参数默认值问题,有可能的话还要调整一下参数的顺序。
Set(int nMax = -1,int nMin = -1,BOOL bTj = TRUE);
如果你这么调用Set(4,4);
编译器无法确定你是调用第一个函数还是第二个函数。
因为第二个函数中bTj有默认值TRUE.