不知道ID:learndkid
31159次访问,排名3680好友1人,关注者2
learndkid的文章
原创 3 篇
翻译 0 篇
转载 33 篇
评论 8 篇
最近评论
mldstk:wow gold,
mldstk:wow gold,
dasdf:dfsdffg
liubaosen:configure 时要加-qvfb 选项
运行时:
qt-embedded/examples/hello -qws -display QVFb:0
liubaosen:Not bad!
文章分类
收藏
    相册
    Delphi
    Embeded
    VC
    单片机/arm
    其他
    驱动开发
    图象处理
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    转载 C++问题集收藏

    新一篇: 各种流行的界面换肤控件库比较 | 旧一篇: xvid源码在Visual C++ 6.0下成功编译的方法

    1:C和C++有什么区别:
    C++支持面向对象的编程,同时兼容C语言的面向过程编程
    2:VB和C++有什么区别:
    VB是一门基于对象语言,有对象和类的概念,但是对于继承、多态实现的不好
    3:VC和C++有什么区别:
    VC可以看成是C++加上MFC基础类库的组合
    4:声明一个引用是需要注意什么,函数返回引用时需要注意什么:
    1 必须在定义引用的时候就声明引用对象
    2 不能更该引用对象
    3 不能引用数字,常量,表达式
    函数引用返回不能引用局部变量
    5:引用和指针有什么区别:
    指针:可以随意指向不同的地址(水性杨花)
    引用:声明后不能引用其它变量(从一而终)
    6:常量引用和常量指针的区别:
    不能改变常量引用的值
    可以改变常量指针的值,但是不能改变常量指针的指向
    7:缺省参数和函数重载的区别和应用:
    缺省参数可以看作是函数重载的特例,Java中取消了缺省参数。
    应用:缺省参数可以涵盖普通应用和特殊应用,但如果要更灵活的处理,需要函数重载
    8:void add(int a, int b)和int add(int a, int b, int c=0)是否是正确的函数重载:
    不是,有可能存在二义性
    9:void add(int a, int b)和int add(const int &a, const int &b)是否是正确的函数重载:
    不是,整型的引用也是整型
    10:内联函数有什么用,是否在函数名前加上inline关键字就成为内联函数了?:
    用途:节省调用函数的开销,加快运行速度
    不一定,编译器会自动优化
    11:何时会用到::操作符:
    类外实现方法,引用类的静态成员等
    12:static成员和普通成员的区别:
    1 静态成员可以不经实例化直接引用
    2 静态属性可以有初始值
    3 静态方法中只能访问静态成员
    4 静态成员一般描述对象的共同特征"
    13:举一个应用static的例子:
    连锁店是一个类,店名属性应该是静态(班级班费)
    14:构造函数和析构函数的作用:
    构造函数用来初始化属性,为指针分配内存空间,析构函数用来释放分配的空间
    15:new/delete操作符和malloc/free的区别:
    1 new/delete是C++标准函数,效率高
    2 new自动获得分配的size,使用方便
    3 new/delete会引发构造/析构函数
    16:写一个为int型指针分配100个空间,然后回收的例子:
    int *p = new int[100];
    delete [] p;
    17:什么是浅复制,什么是深层复制:
    当类中包含指针属性时,浅复制只复制地址,深层复制则复制内容
    18:写一个类模拟cin和cout:
    class MyCout {
    public:
        MyCout & operator <<(int a) {
            printf(""%d"", a);
            return *this;
        }
    }
    19:描述C++的异常处理:
    就是try, catch模型"
    20:同VB的异常处理相比,C++有何优势:
    C++的异常处理区分了正常代码和异常处理代码,并且在抛出用户自定义异常方面更加完善
    21:简述C++中的4种继承模型:
    单一继承,多重继承,层级继承,多极继承
    22:图中如果类A, C中存在同名方法abc,如何引用:
    实例化D的对象d,可以用d.A::abc()或d.B::abc()引用A中的方法,d.C::abc()引用C中的方法
    23:子类会继承父类中所有的内容吗?:
    private的成员不会被继承
    24:题22的图中,实例化D的对象后,构造函数和析构函数的顺序是什么?:
    A()-->B()-->C()-->D()-->~D()-->~C()-->~B()-->~A()
    25:如果父类中存在有参数的构造函数,一般来说也要为它提供没有参数的构造函数,为什么?:
    因为子类在实例化的时候回收先调用父类中没有参数的构造函数(除非子类中声明调用父类中带参数的),这是因为父类中存在构造函数,编
    译器不会为父类产生缺省的构造函数,就会发生错误
    26:什么叫Override,和Overload有什么区别?:
    Override:函数覆盖,发生在父类和子类中,子类覆盖函数和父类的源函数声明必须完全一致
    Overload:函数重载,重载的一组函数必须具有各自不同的参数
    27:父类和子类对象是否可以相互转换?:
    是单向的,可以将子类对象赋给父类对象,也可以让父类指针指向子类,但是不能反过来
    28:继承可以干什么?:
    可以实现代码重用
    代码重用的三个阶段:
    1 复制     缺点:代码分散
    2 模块化   缺点:不易维护,扩充
    3 继承"
    29:父类指针指向子类对象后是否能调用子类中的方法?:
    不能,除非将父类中的方法声明成virtual
    注意:不能通过父类指针调用子类中特有的方法
    30:虚函数和纯虚函数的区别和应用:
    区别:纯虚函数一般没有实现
    应用:父类中有必要实现该方法,考虑到多态可以用虚函数,如果父类中没有必要实现该方法,但是期望在子类中实现,可以使用纯虚函数
    31:类和抽象类的区别和应用:
    区别:抽象类不能实例化对象,抽象类的子类一定要覆盖父类中的纯虚函数
    应用:类一般用来描述现实中存在的对象,抽象类用来描述现实中不存在的概念。比如抽象类“形状”和类“圆”"
    32:子类一定要覆盖(实现)父类中的纯虚函数吗?虚函数呢?:
    子类如果不覆盖父类中的纯虚函数子类不能实例化对象,也变成了抽象类,虚函数子类可以不覆盖
    33:虚析构函数有什么用途,举例?:
    虚析构函数可以保证子类中的析构函数能被调用
    34:写一个多态:比如CPU商品
    35:写一个类工厂:
     

    发表于 @ 2007年03月23日 11:36:00|评论(loading...)|编辑

    新一篇: 各种流行的界面换肤控件库比较 | 旧一篇: xvid源码在Visual C++ 6.0下成功编译的方法

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © learndkid