zd_cugcs

导航

2014年4月6日 #

50个C/C++经典面试题

摘要: 面试题1:变量的声明和定义有什么区别为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,但是只在一个地方定义。加入extern修饰的是变量的声明,说明此变量将在文件以外或在文件后面部分定义。说明:很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间,如外部变量。面试题2:写出bool、int、float、指针变量与“零值”比较的if语句bool型数据:if(flag){A;}else{B;}int型数据:if(0!=flag){A;}else{B;}指针型数:if(NULL==flag){A;}else{B;}float型数据:if( 阅读全文

posted @ 2014-04-06 20:31 zd_cugcs 阅读(1014) 评论(0) 推荐(0) 编辑

设计算法找出字符串中重复出现最长的子串

摘要: 给一个字符串、例如“ababc”要求返回“ab”.因为“ab”连续重复出现且最长。用C/C++语言写一函数完成该算法,给出复杂度。此题有点难度,想到了一种方法,就是kmp算法中的求next数组的方法应该可以解决这个问题,没有实现,请自己查阅kmp算法。 阅读全文

posted @ 2014-04-06 19:54 zd_cugcs 阅读(332) 评论(0) 推荐(0) 编辑

c++多态

摘要: C++中的多态(虽然多态不是C++所特有的,但是C++中的多态确实是很特殊的)分为静多态和动多态(也就是静态绑定和动态绑定两种现象),静动的区别主要在于这种绑定发生在编译期还是运行期,发生在编译期的是静态绑定,也就是静多态;发生在运行期的则是动态绑定,也就是动多态。静多态可以通过模板和函数重载来实现... 阅读全文

posted @ 2014-04-06 18:29 zd_cugcs 阅读(557) 评论(0) 推荐(0) 编辑