C++构造函数调用其他构造函数
来源:互联网 发布:linux操作系统教程pdf 编辑:程序博客网 时间:2024/05/01 00:42
学了这么久的C++,今天算是郁闷了!在此记下,防止以后犯错误!
在写一个string类的时候我在这个类的一个构造函数中去调用了其他的构造函数,代码如下:
我为什么要这么写主要是有这么一个构造函数:
不好意思,在emacs里面写的,窗口开太多,代码被严重扭曲了...
大家可以看到,我主要是为了图个方便。
然后,大家可以看看我是怎么在写main函数:
然后大家来看看我在终端打印出来的结果
我晕!csdn怎么不能贴图...真悲剧。。。算了,我直接把输出复制上来吧^^
大家可以看到,输出是乱码。为什么呢?因为内存是分配了的,但是却没有给值。
下面大家注意看构造函数的调用。在主调构造函数中,是直接去调用了被调的构造函数。而不大都清楚,构造函数的调用意味着对象被创建。
呵呵,想到什么了?我们调用被调构造函数的时候,其实是创建了一个新对象,所以,我们欺骗自己,以为在被调构造函数里面,我们可以
去初始化那些成员变量。不过真沮丧,这仅仅是美好的想法(java是可以这样做的)。大家不信么?来看看内存状态吧!
这个是我吧被调构造函数修改之后的样子,然后有下面输出:
看清楚了吧,我们的this指针值是和在被调构造函数里面那个this指针是不同的!
我们的成员根本没有被初始化!
然后我把主调构造函数改成了这样(不过不建议跟我一样玩火哈^^,最好还是自己写辅助函数去)。
这下子输出是这样的:
可以了。
++ ,写到这里才看到原来还是可以上传图片的,csdn怎么在搞...
- C++构造函数调用其他构造函数
- C#构造函数调用其他构造函数
- C#构造函数调用其他构造函数
- C++中构造函数调用其他函数
- 类的构造函数调用其他构造函数
- C#构造函数调用其他构造函数(转)
- 构造函数调用构造函数
- 构造函数调用构造函数
- 构造函数调用构造函数
- 看C++中构造函数的调用顺序
- C++:构造函数中调用虚函数
- C++:构造函数中调用虚函数
- [C++] 拷贝构造函数的调用
- 【C++&Java】构造函数的调用点
- 【c++】构造函数调用顺序的研究
- C++_避免调用复制构造函数
- c++:(各种)构造函数的调用方式
- 怎么调用私有构造函数(C++)
- 关于纸版INTEL MANUAL
- 动态链接库中分配内存引起的问题(转)
- Session Statistics--Session I/O By User
- 获取远程客户端的真实IP地址
- ibatis配置文件参数说明
- C++构造函数调用其他构造函数
- Materialized Views in Oracle--Oracle的物化视图
- ASP中使用XMLHTTP或ServerXMLHTTP读取远程数据
- 收藏一些优秀网址
- 濮阳人吕不韦(战国策)
- 关于书籍的选择——写给想成为Web开发程序员的一封信3
- 关于设备坐标和逻辑坐标在vc中的相关
- 【PHP系列教程】(2)——PHP的基本语法
- coredll.dll+0x0002006c 的Data Abort问题原因