C++初学者指南 第十二篇(10)

本书旨在介绍C++语言的核心元素,并深入讲解STL、构造函数、转换函数、类成员函数、asm关键字、数组索引运算符、函数调用运算符、动态分配与释放运算符等内容。同时,提供C++函数库的学习指南,推荐《C++:The Complete Reference》一书作为进阶学习资料。通过练习题加深理解,涉及异常处理、通用队列、命名空间、静态成员函数、运算符使用、RobotMotion命名空间等主题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请标明出处:blog.youkuaiyun.com/zhangxingping
更深入C++还有什么?

    本书的目的是介绍C++语言的核心元素.这些核心元素都是我们日常使用C++编程时所需要的特性和技术。就目前介绍的知识来讲,我们已经能够编写真实的、专业的程序了。然而,C++语言是一个非常丰富的语言。它含有很多高级的特性,我们仍然需要掌握。这其中包括:

l 标准模板库(STL)

l 显示构造函数

l 转换函数

l 类的const成员函数和mutable关键字。

l asm关键字

l 重载数组索引运算符[],重载函数调用运算符(),重载动态分配和释放运算符newdelete

在上述内容中,或许最重要的就是标准模板库了。STL是一个模板类的库。它提供了现成的、可用于解决常用的数据存储问题的方案。例如,标准模板库中定义了通用的数据结构,如队列,栈,列表等,我们可以在程序中直接使用。

    我们也许还需要学习一下C++函数库。其中含有大量能简化我们程序的函数。

    我建议大学阅读我的《C++The Complete Reference(C++完全手册》)来进一步学习C++语言。该书由Osborne/McGraw-Hill, Berkeley,Colifornia出版社出版。这本书除了涵盖了本书的全部内容外,还有更多别的东西。现在我们已经有充足的知识来阅读这本更加深入介绍C++的书了。


12章练习题

1.        说明try,catchthrow是如何协调工作来支持异常处理的?

2.        当需要同时捕获基类和派生类的异常时我们应该如何组织catch子句列表?

3.        写出如何声明一个返回值为void类型的函数func(),该函数抛出MyExcpt类的异常。

4.        为项目12-1中的通用队列定义一个异常:在队列上溢和下溢的时候抛出该异常。并写出如何使用这个异常。

5.        什么是通用函数?使用什么关键字来创建通用函数?

6.        为项目5-1创建通用的quicksort()qs()函数。并演示如何使用之。

7.        使用下面定义的Sample类,并使用项目12-1中的通用队列来创建一个含有三个Sample类对象的队列。

    class Sample
    {
        int id;
    public:
        Sample()
        {
            id = 0;
        }
        Sample(intx)
        {
            id =x;
        }
     
        void show()
        {
           cout<<id<<endl;    
        }
    }

8.        重写针对问题7的答案,用动态分配的方式生成其中的三个Sample类的对象。

9.        写出如何声明一个名称为RobotMotion的命名空间

10.    哪个命名空间中囊括了C++标准库?

11.    类的静态成员函数是否可以访问类的非静态数据?

12.    哪个运算符可以在运行时得到一个对象的类型?

13.    使用哪个运算符可以在运行时检测类型转换的有效性?

14.    const_cast是用来做什么用的?

15.    自己针对项目12-1进行重写:队列类放入到QueueCode命名空间中,并放入到自己的文件Queue.cpp中,然后修改main()函数,使用using语句来引入QueueCode命名空间。

16.    请继续学习C++。它是当前世界上最强大的计算机语言。掌握了它,我们就成为了众多编程者中的中坚分子。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值