关于编译报警告。
本次是接手一个新手的代码,总共不到1K行的代码。两个类。编译的时候报的警告,本来也不打算管理这个事情的。要求也不会有那么严格。但上午看完代码后,觉得毕竟是新手写的代码,还是有很多需要修改的地方。当下没事,首先把这个警告处理了。具体编译报的警告如下:

ExtractTaskTool.h:39: 警告:‘ExtractTaskTool::m_objDataContext’ 将随后被初始化
ExtractTaskTool.h:31: 警告: ‘std::string ExtractTaskTool::m_szConfigConnGP’
ExtractTaskTool.cpp:19: 警告: 当在这里初始化时
ExtractTaskTool.h:33: 警告:‘ExtractTaskTool::m_szhost_IP’ 将随后被初始化
ExtractTaskTool.h:32: 警告: ‘std::string ExtractTaskTool::m_szConfigConnORA’
ExtractTaskTool.cpp:19: 警告: 当在这里初始化时
ExtractTaskTool.h:32: 警告:‘ExtractTaskTool::m_szConfigConnORA’ 将随后被初始化
ExtractTaskTool.h:27: 警告: ‘std::string ExtractTaskTool::m_DynaSelect’
ExtractTaskTool.cpp:19: 警告: 当在这里初始化时
ExtractTaskTool.h: In constructor ‘ExtractTaskTool::ExtractTaskTool(const NS_ServiceConst::XMLContext&, const NS_ServiceConst::DataContext&, const char*, const char*, const char*)’:
ExtractTaskTool.h:39: 警告:‘ExtractTaskTool::m_objDataContext’ 将随后被初始化
ExtractTaskTool.h:27: 警告: ‘std::string ExtractTaskTool::m_DynaSelect’
ExtractTaskTool.cpp:40: 警告: 当在这里初始化时

这个警告的意思是说,在成员变量初始化的时候,用的初始化列表进行初始化的时候,初始化列表中成员变量的顺序要和类定义里面成员变量的顺序保持一致。
这个原理在于对于类的成员变量初始化的问题。每个类的成员变量都会在构造函数的时候进行初始化操作,然后我们为了某些需要自己对成员变量进行初始化的时候,我们一般用初始化列表的形势对成员变量进行初始化。这里就有一个要注意的。不管初始化列表中的成员是怎么个顺序排列的,都以类的定义的成员的顺序进行初始化工作。所以我们一般尽量保持初始化列表中的成员变量顺序与类的定义中成员变量的顺序保持一致。如果不保持一致的话,其实有很多编译器也不会报什么的。
在这里我查了一下,我用的g++的编译器,版本号是:gcc-c++-4.1.2-14.el5。报了个警告。
把构造函数初始化列表中的成员位置按类定义中修改一下,就没有警告啦。

警告:‘xxxx’ 将随后被初始化的更多相关文章

  1. Java编程思想学习(五)----第5章:初始化与清理

    随着计算机革命的发展,“不安全”的编程方式已逐渐成为编程代价高昂的主因之一. C++引入了构造嚣(constructor)的概念,这是一个在创建对象时被自动调用的特殊方法.Java中也采用了构造器,并 ...

  2. 转-ArcGIS Engine许可初始化

    关于初始化Engine许可的,其实原理都很简单,大家一般都没有问题,但又往往会因为不够细心加上Engine的“小脾气”,让不少程序员都要在这里犯错. 以Engine9.2为例,应用程序是强制初始化许可 ...

  3. C++: 类成员初始化列表语法

      类的成员初始化列表的初始化的基本语法,类的构造函数还可以运用此语法为其变量初始化: class Class { private: int a; int b; char ch; public: Cl ...

  4. Linux内存初始化(一)

    一.前言 一直以来,我都非常着迷于两种电影拍摄手法:一种是慢镜头,将每一个细节全方位的展现给观众.另外一种就是快镜头,多半是反应一个时代的变迁,从非常长的时间段中,截取几个典型的snapshot,合成 ...

  5. mysql数据库二进制初始化出现:170425 17:47:04 [ERROR] /application/mysql//bin/mysqld: unknown option '--skip-locking' 170425 17:47:04 [ERROR] Aborting 解决办法

    [root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/application/mysql/ --data ...

  6. Load and Unload

    一.前言 在前一段时间,我遭遇了一个现象诡异的Bug,最后原因归结为在DllMain里错误地调用了FreeLibrary(在本文最后对此Bug有详细的解释). MSDN里关于禁止在DllMain里调用 ...

  7. Mastering MariaDB 神秘的MariaDB 中文翻译版

    是某群的哥们义务翻译的,宣传一下,还没时间时间读,粗滤看了全部翻译完了300多页佩服 https://github.com/CMant/Mastering-MariaDB- 原地址:如果你需要读,请s ...

  8. py-faster-rcnn之从solver文件创建solver对象,建立pythonlayer

    faster-rcnn在训练阶段,根据一个solver的prototxt文件创建相应的网络.仅凭一个prototxt就创建网络?其实还涉及到自定义的PythonLayer. 比如lib/rpn/anc ...

  9. oracle异常(-)

    一.概述异常分成三大类:预定义异常.非预定义异常.自定义异常处理方法分为:直接抛出异常.内部块处理异常.游标处理异常 预定义异常:由PL/SQL定义的异常.由于它们已在standard包中预定义了,因 ...

随机推荐

  1. struts2+hibernate环境搭建

    使用的是myeclipse2014,搭建比较简单,很多jar包不用自己引入,很多初始配置文件不需要自己写.后面会介绍ssh的搭建. 首先新建web project. 1.右键项目,如图所示 这个直接f ...

  2. C++数组与指针

    指向数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址.指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中) ...

  3. virtualbox中新版本Ubuntu安装软件增强包后重启无限登录界面的解决办法

    原来我虚拟机版本是4.2.10,装的Ubuntu3.3,因为版本过老使用出现了一些问题,于是换成14.04,安装成功,但是装增强包的时候,装完重启,无限登录界面,密码是对的. 看了网上的很多方法,什么 ...

  4. 一周学会Mootools 1.4中文教程:序论

    刚才发了几篇Mootools(以后直接简称Moo或Mt,看到这两个名字的时候不要感到奇怪),有一位热心的朋友"追杀"告诉我说现在已经出到1.4了,就不要再纠结于1.2了,想象一下有 ...

  5. 弹出窗口内嵌iframe 框口自适应

    说一下,弹出窗口还有内嵌一个iframe 这种模式应该是不科学的,但是公司项目里面就偏偏用到了,它这高低还不能只适应,所以我痛苦的日子来了 分析一下: 首先window.showDialog 方法的时 ...

  6. PowerPoint2003/2007幻灯片常用快捷键大全

    熟习掌握PowerPoint快捷键不仅可以对我们在制作幻灯片的时候更加熟练节省时间.而且在我们演示PPT文稿的时候,也不需要停下演讲去调试菜单工具来切换下一张,我们只需要轻轻的按一下键盘即可轻松切换P ...

  7. jQuery tmpl index

    <!-- 校验失败后显示 TODO--> <script id="checkError_table_tmpl" type="text/x-handleb ...

  8. Java Date 和 Calendar

    Java 语言的Date(日期),Calendar(日历),DateFormat(日期格式)组成了Java标准的一个基本但是非常重要的部分.日期是商业逻辑计算一个关键的部分,所有的开发者都应该能够计算 ...

  9. C语言实验——一元二次方程Ⅱ

    C语言实验--一元二次方程Ⅱ Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 169  Solved: 131 [Submit][Status][Web ...

  10. iOS --- [持续更新中] iOS移动开发中的优质资源

    在我们做iOS APP的开发过程中, 须要非常多设计, 产品, 技术, 运营等方面的技巧和资源. 现将其整理汇总, 本文会一直持续更新. 敬请关注. 设计 Dribbble Dribbble是一个面向 ...