高手来看一下这个问题:Implicit int is not supported in C++

fishchild 2009-06-02 11:00:51
一段代码
#ifndef OamCfgTtIfSs7DbMgr_H
#define OamCfgTtIfSs7DbMgr_H


//---------------------------------------------- include files
#include <OamCfgTtIfDbMgr.h>


// ----------------------------------------------------
class OamCfgTtIfSs7DbMgr : public OamCfgTtIfDbMgr

{
public:

// constructor and destructor
OamCfgTtIfSs7DbMgr() ;
~OamCfgTtIfSs7DbMgr() ;

bool connect (void);

private:

#ifndef ATRIUMX_PORTABLE

//Solaris下编译下面这行出现告警:Implicit int is not supported in C++ 请教一下这是什么问题导致的?怎么解决?

OamCfgTtIfSysConfigfDbMgr (const OamCfgTtIfSs7DbMgr&);
#else /* ATRIUMX_PORTABLE */
OamCfgTtIfSs7DbMgr (const OamCfgTtIfSs7DbMgr&);
#endif /* ATRIUMX_PORTABLE */

OamCfgTtIfSs7DbMgr& operator= (const OamCfgTtIfSs7DbMgr&);

bool enableDataAccess(void);

};

#endif
...全文
278 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
fishchild 2009-06-05
  • 打赏
  • 举报
回复
查查发现应该还是函数名字不对,这里应该都是构造函数。
zjf30366 2009-06-02
  • 打赏
  • 举报
回复
这个问题说明你少了类型的声明,编译器默认给添加一个int,因为你在使用的时候没有给声明是什么类型,所以会出现,
比如,你定义一个变量a,直接用的const a;没有声明是字符型还是整型,所以编译器会默认为int型。
taodm 2009-06-02
  • 打赏
  • 举报
回复
普通函数申明没有返回类型。基本功级的错误了。
ruihaosh 2009-06-02
  • 打赏
  • 举报
回复
名字够怪异, 没写返回类型.
zjf30366 2009-06-02
  • 打赏
  • 举报
回复
ss7协议?
SoRoMan 2009-06-02
  • 打赏
  • 举报
回复
OamCfgTtIfSysConfigfDbMgr (const OamCfgTtIfSs7DbMgr&);

这是啥?构造函数?OamCfgTtIfSysConfigfDbMgr 类从哪来的?编译器不会当成普通函数了吧
「已注销」 2009-06-02
  • 打赏
  • 举报
回复
为什么要使用这么的名字?加密?OamCfgTtIfSs7DbMgr
hiboys 2009-06-02
  • 打赏
  • 举报
回复
是不是你的条件编译的宏用错了
你的宏ATRIUMX_PORTABLE 在那里定义的?
似乎这里该编译到else分支上的代码
coldiceangel 2009-06-02
  • 打赏
  • 举报
回复
学习了
yalelee 2009-06-02
  • 打赏
  • 举报
回复
OamCfgTtIfSysConfigfDbMgr 应该是你的构造函数,但是名字写错了。编译器就认为它是一个成员函数,而C++成员函数必须有返回类型。如果是C语言它有默认的返回类型int,所以编译器提示“Implicit int is not supported in C++”
biosli 2009-06-02
  • 打赏
  • 举报
回复
OamCfgTtIfSysConfigfDbMgr是啥?函数名的话,缺少返回值。
类名的话声明在哪?和你这个类有啥关系?如果是父类的话没发在这里声明父类的构造函数的。
goodname 2009-06-02
  • 打赏
  • 举报
回复
上面已经说很明白了

如果是拷贝构造函数,那么名字应该和类名一致。
如果不是的话,那么缺少返回类型。

问题在这里OamCfgTtIfSysConfigfDbMgr这到底是不是个函数名呢?
fishchild 2009-06-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zjf30366 的回复:]
这个问题说明你少了类型的声明,编译器默认给添加一个int,因为你在使用的时候没有给声明是什么类型,所以会出现,
比如,你定义一个变量a,直接用的const a;没有声明是字符型还是整型,所以编译器会默认为int型。
[/Quote]

OamCfgTtIfSs7DbMgr是个类,就是外面这个class

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧