文章分类 -  C++

摘要:/* 子类需不需要全部实现父类的接口呢? 1、父类不是纯虚类 1.1、父类中的非虚函数:都可以,建议不实现; (如果子类自己实现,那这个接口就应该是virtural了) 1.2、父类中的虚函数:都可以,建议实现;(如果想用父类的,那这个接口就没有必要是virtual的了) 2、父类是纯虚类 子类必须 阅读全文
posted @ 2019-03-08 17:35 ren_zhg1992 阅读(784) 评论(0) 推荐(0)
摘要:转载:https://blog.csdn.net/lishuhuakai/article/details/18276477# 我们首先复习一下"指向函数的指针"如何使用? 比较简单,不是吗?为什么*pfun需要用()扩起来呢? 因为*的运算符优先级比()低,如果不用()就成了*(pfun()). 指 阅读全文
posted @ 2019-03-06 16:25 ren_zhg1992 阅读(559) 评论(0) 推荐(0)
摘要:原型: int RM_LIB_SendToIC(int ulSubModuleID, int ulLevel, const char *pcMsg, ...) 实现: 小结: 可变的参数,如果为空,那么va_list的内容就是空 “”, 但是va_list 指针不是空 所以满足vsprintf_s的 阅读全文
posted @ 2019-03-06 15:55 ren_zhg1992 阅读(290) 评论(0) 推荐(0)
摘要:参考:https://www.cnblogs.com/QG-whz/p/4517336.html dynamic_cast主要用于“安全地向下转型” dynamic_cast用于类继承层次间的指针或引用转换。主要还是用于执行“安全的向下转型(safe downcasting)”,也即是基类对象的指针 阅读全文
posted @ 2019-03-03 17:10 ren_zhg1992 阅读(14433) 评论(0) 推荐(1)
摘要:转载:https://blog.csdn.net/audience_fzn/article/details/80455236 const成员函数:在成员函数后加const,const修饰this指针指向的对象,这也就保证调用这个const成员函数的对象在内部不会被改变 首先我们要搞懂const放在不 阅读全文
posted @ 2019-01-30 15:34 ren_zhg1992
摘要:转载:https://www.cnblogs.com/qingergege/p/7609533.html 常成员函数和非常成员函数之间的重载 首先先回忆一下常成员函数 声明:<类型标志符>函数名(参数表)const; 说明: (1)const是函数类型的一部分,在实现部分也要带该关键字。 (2)co 阅读全文
posted @ 2019-01-29 14:45 ren_zhg1992 阅读(481) 评论(0) 推荐(0)
摘要:sort的应用; 1、可以传入两个参数; sort(a,a+N) ,其中a是数组,a+N表示对a[0]至a[N-1]的N个数进行排序(默认从小到大排序); 2、传入三个参数; sort(a,a+N,cmp) cmp第三个参数是一个函数 ; 如果让函数从大到小排序,可以用如下算法实现; 而stable 阅读全文
posted @ 2017-07-03 15:37 ren_zhg1992 阅读(248) 评论(0) 推荐(0)
摘要:转载:http://www.cnblogs.com/zhuyf87/archive/2012/12/23/2829725.html 抛出异常与栈展开(stack unwinding) 抛出异常时,将暂停当前函数的执行,开始查找匹配的catch子句。首先检查throw本身是否在try块内部,如果是,检 阅读全文
posted @ 2017-06-27 10:40 ren_zhg1992 阅读(182) 评论(0) 推荐(0)
摘要:异常: 程序错误 异常语法 异常抛出 异常捕获 异常传播 栈展开 阅读全文
posted @ 2017-06-25 21:57 ren_zhg1992 阅读(74) 评论(0) 推荐(0)
摘要:目标: C语言错误处理方法 C++异常处理方法 C++异常处理的优点 C语言错误处理方法 返回值(if ...else语句判断错误) errno goto语句 setjmp、longjmp(这种跳转不会调用对象析构函数,因为对象不能被正常清理) C语言的出错处理被认为是紧耦合的,函数的使用者必须在非 阅读全文
posted @ 2017-06-25 21:53 ren_zhg1992 阅读(142) 评论(0) 推荐(0)
摘要:转载:http://c.biancheng.net/cpp/html/295.html 头文件:#include <stdio.h>sprintf()函数用于将格式化的数据写入字符串,其原型为: int sprintf(char *str, char * format [, argument, .. 阅读全文
posted @ 2017-06-14 18:06 ren_zhg1992 阅读(903) 评论(0) 推荐(0)
摘要:转载:http://www.cnblogs.com/bluestorm/p/3168719.html C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。 1.int/float to string/array: C语言提供了几个标准库函数,可以将任意类型(整型、 阅读全文
posted @ 2017-06-14 18:03 ren_zhg1992 阅读(225) 评论(0) 推荐(0)
摘要:转载:http://blog.csdn.net/caojunling/article/details/1890519 学C++的时候,这几个输入函数弄的有点迷糊;这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行)转载请保留作者 阅读全文
posted @ 2017-06-12 17:36 ren_zhg1992 阅读(123) 评论(0) 推荐(0)
摘要:看来基础还是很重要的,基础不扎实就难以学好c语言,就别说写出高质量的c语言代码了。今天,我就被这个问题折磨的不行了,哈哈,不过现在终于明白了‘\0’ ,‘0’, “0” 之间的区别了。困惑和快乐与你分享! 首先比较一下‘\0’和‘0’的区别。 有一个共同点就是它们都是字符,在c语言中,字符是按其所对 阅读全文
posted @ 2017-06-12 17:21 ren_zhg1992 阅读(529) 评论(0) 推荐(0)
摘要:1.别把空格和空字符混为一谈!! 输出: 5 6 为什么len不是3呢??strlen不是遇到空字符‘\0’就结束吗?? 查了一下ASCII码表,恍然大悟。之前竟然一直把两者混为一谈。 一个是0 一个是32 注意:系统会在“aaa ”后面再'\0'。所以sizeof的值为6。 2.“”和“\0”也是 阅读全文
posted @ 2017-06-12 17:20 ren_zhg1992 阅读(156) 评论(0) 推荐(0)
摘要:在做在线编程的时候,好多人都是用到 getline()函数,而不是用的cin。刚开始还觉得都可以吧。直到遇到了输入有空格的情况。 那么我们这里就来说说 cin和getline() 的区别。 1、cin>> 用法1:最基本,也是最常用的用法,输入一个数字: #include <iostream>usi 阅读全文
posted @ 2017-06-12 16:36 ren_zhg1992 阅读(3895) 评论(0) 推荐(0)
摘要:转载:http://www.cnblogs.com/qlwy/archive/2012/03/25/2416937.html string中c_str()、data()、copy(p,n)函数的用法 标准库的string类提供了3个成员函数来从一个string得到c类型的字符数组:c_str()、d 阅读全文
posted @ 2017-06-05 16:54 ren_zhg1992 阅读(188) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2017-04-25 17:38 ren_zhg1992 阅读(204) 评论(0) 推荐(0)
摘要:一般而言,const有一下几个方面的作用: (1)定义const常量,具有不可变性。 const int MAX = 100; 必须初始化哦!! (2)修饰指针 这里分常量指针,指针常量。 const int *A; //常量指针,指针指向的对象的值不可以改变,但是指针可以指向别处。 int * c 阅读全文
posted @ 2017-04-25 17:09 ren_zhg1992 阅读(114) 评论(0) 推荐(0)
摘要:转载:http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777431.html C/C++中extern关键字详解 1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他 阅读全文
posted @ 2017-04-25 16:58 ren_zhg1992 阅读(147) 评论(0) 推荐(0)