[C&C++]
primo_001
这个作者很懒,什么都没留下…
展开
-
C++虚继承问题
学过C++的人都知道,里面有个虚拟继承是为了使得类多重继承方式下成员名称二义性的问题的。假如我们定义一个普通类A,然后定义两个普通类B,C都来继承A,最后我们定义一个普通类D类多重继承B和C,那么现在我们每一个D的实例对象中都有两份A的数据和方法。所以我们如果使用基类A中某个方法时就会产生二义性的问题。故而,虚拟继承应运而生,有了虚拟继承,每构造基类时就会检查该类是否已经存在了。故而能原创 2014-03-22 20:16:03 · 679 阅读 · 0 评论 -
关于“指针在任何情况下都可进行>, <, >=, <=, = =运算”的判断
在《求职之道》上看到了“指针在任何情况下都可进行>, =, ”的判断题,脑中无解,便去百度搜了下,可是发现大多数人都说这个命题是正确的,当然也有不同意见的。意见一:指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址,可看成整型变量。 如果仅仅是指针比较,其实就是整型变量比较,当然任何情况下都可以进行比较运算意见二:1.指针是地址就和一般数据一样,但地址不原创 2014-04-02 13:10:29 · 6186 阅读 · 1 评论 -
常用的16个c/c++面试题
1. C中static有什么作用 (1)隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性,故使用static在不同的文件中定义同名函数和同名变量,而不必担心命名冲突。 (2)static的第二个作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。共有两种变量存储在静态存转载 2014-04-07 23:58:58 · 561 阅读 · 0 评论 -
类相互包含引用的问题--类前向声明
在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A类B,A中使用了B定义的类型,B中也使用了A定义的类型转载 2014-05-18 11:48:43 · 937 阅读 · 0 评论 -
C语言隐式类型转换
隐式类型转换分三种,即算术转换、赋值转换和输出转换。1.算术转换 进行算术运算(加、减、乘、除、取余以及符号运算)时,不同类型数招必须转换成同 一类型的数据才能运算,算术转换原则为: 整型提升:对于所有比int小的类型,包括char, signed char, unsigned char, short, unsigned short,首先会提升为int类型转载 2014-06-02 17:02:52 · 599 阅读 · 0 评论 -
如果程序中同时出现了typedef和#define,编译器会怎么办?
今天看书的时候,无意间写出原创 2014-06-01 12:13:12 · 1143 阅读 · 0 评论 -
如果你看到“f()();”第一反应是什么?
//类型别名,为了f()的声明简洁明了typedef void (*pfun)();void fun(){ cout<<"I am in fun()"<<endl;}//定义一个可以返回函数指针的函数pfun f(){ return &fun;}int main(){ f()(); return EXIT_SUCCESS;}原创 2014-06-01 12:43:34 · 862 阅读 · 1 评论 -
相邻字符串常量将会自动合并成一个字符串
如果有代码如下:原创 2014-08-10 23:28:58 · 1693 阅读 · 2 评论 -
读博文《二维指针和二维数组可以互用吗?》有感
博文地址:http://blog.sina.com.cn/s/blog_6237dcca0100hham.html原创 2014-08-14 20:58:14 · 614 阅读 · 0 评论