愚蠢的错误:关于C2533错误
错误 关于
2023-09-27 14:27:56 时间
今天写了一个类,头文件声明如下:
class CConfigManager
{
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
public:
CConfigManager(void);
~CConfigManager(void);
}
结果编译器给我报错:
class CConfigManager
{
public:
CConfigManager(void);
~CConfigManager(void);
}
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
CConfigManager::CConfigManager()
{
}
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
class CConfigManager{} CConfigManager::CConfigManager()
{}
一个极易被忽略的内存泄漏情况,看看你会不会犯一样的错 Java之所以能够成为世界上最受欢迎的语言,与其垃圾回收机制分不开。我们Javaer能够在创建完对象后就不用管她的生死,确实是十分方便(真特么是个渣男)。可是有时候因为你创建了她,又对她爱答不理,就很有可能出大问题。
7个新手数据讲述者犯下的致命错误,你都知道吗? 本文约1800字,建议阅读5分钟。 本文介绍了新手数据讲师所犯的最常见的错误,以及如何改正它们。 在制作数据故事时,很容易迷失在细节中,并且无法创造出可以激发别人动手操作的数据故事。下面是新手数据讲师所犯的最常见的错误,以及如何改正它们。这些技巧来自“像数据讲述者一样思考”研究会。 1. 数据故事不适合听众 不是所有的听众都是相同的,不是所有的听众都有一样的目标。即使您自己审视自己团队内部,也可以考虑一个技术支持专家和一个运营主管如何具有不同的观点。尽管两者都有共同的目标即服务客户,但每个人对于这个目标能够实现的方法和原因具有不同的观点。 许多展示数据故事的讲
遇到 400、500 错误千万不要慌! 很多人都会在平时开发过程中遇到400或500异常,并且也没有走到服务端controller中,就变得有些不知所措。 我们知道SpringMVC从DispatchServlet开始接收与分发请求,从入口开始debug,还能找不到问题所在么? 从DispatchServlet的doDispatch()方法开始处理请求:
关于代码的那些低级错误,都是血泪的教训 无论你是初级工程师,中级工程师,高级工程师,甚至是全栈工程师、架构师,都是从零开使一步一步走出来的,想必都会犯过一些低级错误。 那些错误都是怎么发生的,如何避免发生错误呢,看看我们各位资深的程序员以自身为例,告诫我们敬畏每一段代码
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![ExpandedBlockStart.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![ExpandedBlockEnd.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
error C2533: CConfigManager::CConfigManager : constructors not allowed a return type
我查了下MSDN,MSDN上面说:
编译器错误 C2533
语言筛选器: 全部 语言筛选器: 多个 语言筛选器: Visual Basic 语言筛选器: C# 语言筛选器: C++ 语言筛选器: J# 语言筛选器: JScript
Visual Basic(声明)
Visual Basic(用法)
C#
C++
J#
JScript
错误消息
“identifier”: 构造函数不允许返回类型
构造函数不能有返回类型(甚至不能有 void 返回类型)。
下面的示例生成 C2533:
// C2533.cpp
// compile with: /c
class X {
public:
X();
};
int X::X() {} // C2533
X::X(){} // OK
我当时没有弄明白.实质上编译器的角度来看这是正确的.
当头文件被include以后,也就和cpp文件合成一个文件了,
这个时候就是这种情况了:
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![ExpandedBlockStart.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![InBlock.gif](http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif)
![ExpandedBlockEnd.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![ExpandedBlockStart.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![ExpandedBlockEnd.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
![dot.gif](http://www.cppblog.com/Images/dot.gif)
这个时候,实际上就像这样了:
![ExpandedBlockStart.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![ExpandedBlockStart.gif](http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![None.gif](http://www.cppblog.com/Images/OutliningIndicators/None.gif)
也就是说我这个时候定义了一个类型,并且它是构造函数的返回值类型.编译器告诉我说:
constructors not allowed a return type构造函数不允许返回一个类型.
构造函数是没有返回值类型的....
只是我当时粗心大意,和理解的问题造成这个日志的.
现在特别修改了它,希望其他碰到此类问题的朋友有一些深刻的意义.
我有什么不对之处,也请各位不吝赐教,批评指正.
一个极易被忽略的内存泄漏情况,看看你会不会犯一样的错 Java之所以能够成为世界上最受欢迎的语言,与其垃圾回收机制分不开。我们Javaer能够在创建完对象后就不用管她的生死,确实是十分方便(真特么是个渣男)。可是有时候因为你创建了她,又对她爱答不理,就很有可能出大问题。
7个新手数据讲述者犯下的致命错误,你都知道吗? 本文约1800字,建议阅读5分钟。 本文介绍了新手数据讲师所犯的最常见的错误,以及如何改正它们。 在制作数据故事时,很容易迷失在细节中,并且无法创造出可以激发别人动手操作的数据故事。下面是新手数据讲师所犯的最常见的错误,以及如何改正它们。这些技巧来自“像数据讲述者一样思考”研究会。 1. 数据故事不适合听众 不是所有的听众都是相同的,不是所有的听众都有一样的目标。即使您自己审视自己团队内部,也可以考虑一个技术支持专家和一个运营主管如何具有不同的观点。尽管两者都有共同的目标即服务客户,但每个人对于这个目标能够实现的方法和原因具有不同的观点。 许多展示数据故事的讲
遇到 400、500 错误千万不要慌! 很多人都会在平时开发过程中遇到400或500异常,并且也没有走到服务端controller中,就变得有些不知所措。 我们知道SpringMVC从DispatchServlet开始接收与分发请求,从入口开始debug,还能找不到问题所在么? 从DispatchServlet的doDispatch()方法开始处理请求:
关于代码的那些低级错误,都是血泪的教训 无论你是初级工程师,中级工程师,高级工程师,甚至是全栈工程师、架构师,都是从零开使一步一步走出来的,想必都会犯过一些低级错误。 那些错误都是怎么发生的,如何避免发生错误呢,看看我们各位资深的程序员以自身为例,告诫我们敬畏每一段代码
相关文章
- Jenkins 构建的时候提示 DOCKER_HOST 错误
- springboot2.0自适应效果错误响应
- 关于PHP的错误机制总结
- MySQL 8.0 Public Key Retrieval is not allowed 错误的原因及解决方法
- 关于Flutter打包报linked and embedded framework ‘App.framework‘ was built for iOS Simulator的错误
- 关于iOS报Could not find ‘minitest‘ (>= 5.1) among 39 total gem(s)的错误
- Android Studio中关于9-patch格式图片的编译错误
- mysql通过DATE_FORMAT将错误数据恢复
- 数据挖掘中易犯的11大错误
- 关于百度地图(离线)使用过程报“Cannot read property 'jb' of undefined ”错误的解决办法
- 【错误解决】 java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.classes.views.index_jsp
- 当开源库碰到错误怎么办?
- 关于arduino通过串口发送到processing的数据混乱(错误显示不正确)的问题解答
- 关于‘Use of undeclared type’的错误!
- MDK常见错误详解集合
- 关于Static interface methods are only supported starting with Android N (--min-api 24)错误怎么修改
- 【错误记录】编译 Android 版本的 ijkplayer 报错 ( ./init-android.sh: 第 37 行: cd: android/contrib/: 没有那个文件或目录 )
- 最近关于mysql的造型,binlog使用,以及阿里云上线数据处理错误导致被处罚的思考
- 关于Redis-存Long取Integer类型转换错误的问题;String对象被转义的问题
- 关于Python安装模块出现error: command 'gcc' failed with exit status 1错误的解决方法
- 【错误记录】Android 命令行执行 7zr 可执行程序报错 ( Cannot run program “7zr“ : error=13, Permission denied )
- 关于xftp上传文件状态错误的解决