1. 首页
  2. 课程学习
  3. .Net
  4. 函数的重载-机器人学导论第三版课后习题答案

函数的重载-机器人学导论第三版课后习题答案

上传者: 2024-07-27 10:32:19上传 PDF文件 14.06MB 热度 7次

6.4 结构函数

第5章介绍了结构类型,它可在一个地方存储多个数据元素,结构可以做的工作远不止此。一个重要的功能就是结构可以包含函数和数据。这初看起来很奇怪,但实际上是非常有用的。考虑以下结构:


struct CustomerName {

    public string firstName, lastName;

}

如果变量的类型是CustomerName,并且要在控制台上输出一个完整的名称,就必须从其组件部分建立该名称。CustomerName变量myCustomer可以使用下述语法:


CustomerName myCustomer;

myCustomer.firstName = "John";

myCustomer.lastName = "Franklin";

Console.WriteLine("{0} {1}", myCustomer.firstName, myCustomer.lastName);

把函数添加到结构中,就可以集中处理常见任务,从而简化这个过程。可以把合适的函数添加到结构类型中,如下所示:


struct CustomerName {

    public string firstName, lastName;

    public string Name() {

        return firstName + " " + lastName;

    }

}

看起来这与本章前面的其他函数很类似,但没有使用static修饰符。本书将在后面阐明其原因,现在知道该关键字不是结构函数所必须的即可。这个函数的用法如下所示:


CustomerName myCustomer;

myCustomer.firstName = "John";

myCustomer.lastName = "Franklin";

Console.WriteLine(myCustomer.Name());

这个语法比前面的语法简单得多,也更容易理解。注意,Name()函数可以直接访问firstNamelastName机构成员,在CustomerName结构中,它们可以被看作是全局成员。

6.5 函数的重载

本章的前面介绍了在调用函数时,必须匹配函数的签名。这表明,需要让多个函数操作不同类型的输入,而函数重载(Function Overloading)正是为此而生。如果你对函数重载感兴趣,可以参考C++函数重载详解C++之函数重载。这些资源详细介绍了函数重载的概念和应用场景,让你在编程实践中游刃有余。

同时,关于如何在C++中使用重载函数模板,可以查看C++重载函数及重载函数模板的使用。这一技巧不仅使代码更加灵活,而且提高了代码的可读性和可维护性。如果你还想了解更多关于构造函数重载的知识,不妨看看C++中构造函数重载,这篇文章为你揭示了构造函数重载的奥秘。

要不要试试重载函数的威力呢?你将发现编程的乐趣无穷!

用户评论