头歌Educoder实验:程序设计二(面向对象)_实训3_类外定义成员函数

这篇具有很好参考价值的文章主要介绍了头歌Educoder实验:程序设计二(面向对象)_实训3_类外定义成员函数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第1关:类外定义存取函数

任务描述

本关仍然有一个 Int 类,该类包含一个 int 类型的成员。为其编写存取函数。注意,存取函数要在类外实现。

相关知识

类的定义中,既可以书写成员函数的声明,也可以书写成员函数的定义(即实现)。如果在类中定义成员函数,则该成员函数被视作 inlineinline 一般只用于较“短小的”函数:3 到 5 行,没有循环。 因此,某些成员函数必然要写在类的定义之外。 假设类名为 Int,成员函数名为 getValue,则在类外书写成员函数,函数头必须写为:

 

int Int::getValue()const{}

因为 Int::getValue 才是该成员函数的全名。

编程要求

根据提示,在右侧编辑器的Begin-End区域内补充代码。

测试说明

本关的项目将会包括3个文件,main.cpp、Int.h 和 Int.cpp。main.cpp 中包含主函数,是已经写好的;Int.h 中包含 Int 类的定义,包括成员函数的声明,也是写好的;Int.cpp 是空的,有待完成,需要填写的内容主要是 Int 类成员函数的实现,当然也要包括必要的头文件。

Int 类的定义如下

/**
 * 这是一个包装类(wrapper class),包装类在C++中有点小小的用处(基本上没用),在Java中的用处更大一些。
 */
#ifndef _INT_H_  //这是define guard 
#define _INT_H_  //在C和C++中,头文件都应该有这玩意 
class Int{
private://这是访问控制——私有的 
    int value; //这是数据成员,我们称Int是基本类型int的包装类,就是因为Int里面只有一个int类型的数据成员 
public:    //这是公有的 
    //以下是成员函数的声明 
    int getValue()const;
    void setValue(int v);
};//记住这里有一个分号 
#endif

main函数如下:

#include "Int.h"
#include <iostream>
using namespace std;
int main(){
    int x;
    cin>>x;
    Int a;
    a.setValue(x);
    cout<<a.getValue()<<endl;
    return 0;
}
/********* Begin ********/
#include "Int.h"
int Int::getValue()const{
    return value;
}
void Int::setValue(int v){
    value = v;
}


/******** End **********/

第2关:类外定义构造函数

任务描述

本关仍然有一个 Int 类,该类包含一个 int 类型的成员。为其编写构造函数和存取函数。注意,所有成员函数均要在类外实现。

相关知识

类的定义中,既可以书写成员函数的声明,也可以书写成员函数的定义(即实现)。如果在类中定义成员函数,则该成员函数被视作 inlineinline 一般只用于较“短小的”函数:3 到 5 行,没有循环。 因此,某些成员函数必然要写在类的定义之外。 假设类名为 Int,则在类外书写构造函数,函数头必须写为:

 
  1. Int::Int()...

因为 Int::Int 才是该构造函数的全名。

编程要求

根据提示,在右侧编辑器的Begin-End区域内补充代码。

测试说明

本关的项目将会包括3个文件,main.cpp、Int.h 和 Int.cpp。main.cpp 中包含主函数,是已经写好的;Int.h 中包含 Int 类的定义,包括成员函数的声明,也是写好的;Int.cpp 是空的,有待完成,需要填写的内容主要是 Int 类成员函数的实现,当然也要包括必要的头文件。

Int 类的定义如下

/**
 * 这是一个包装类(wrapper class),包装类在C++中有点小小的用处(基本上没用),在Java中的用处更大一些。
 */
#ifndef _INT_H_  //这是define guard 
#define _INT_H_  //在C和C++中,头文件都应该有这玩意 
class Int{
private://这是访问控制——私有的 
    int value; //这是数据成员,我们称Int是基本类型int的包装类,就是因为Int里面只有一个int类型的数据成员 
public:    //这是公有的 
    //以下是构造函数的声明 
    Int();
    Int(Int const&);
    Int(int);
    //以下是取函数的声明
    int getValue()const; 
};//记住这里有一个分号 
#endif

main函数如下:文章来源地址https://www.toymoban.com/news/detail-741929.html

#include "Int.h"
#include <iostream>
using namespace std;
int main(){
    int x;
    cin >> x;
    Int a;
    Int b(x);
    Int c(b);
    cout<<a.getValue()<<" "<<b.getValue()<<" "<<c.getValue()<<endl;
    return 0;
}
/********* Begin ********/
#include "Int.h"
Int::Int(){
    value = 0;
}
Int::Int(Int const& a){
    value = a.value;
}
Int::Int(int v){
    value = v;
}
int Int::getValue()const{
    return value;
}



/******** End **********/

到了这里,关于头歌Educoder实验:程序设计二(面向对象)_实训3_类外定义成员函数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java面向对象程序设计实验报告(实验五 接口的练习)

    ✨ 作者:命运之光  ✨ 专栏: Java面向对象程序设计实验报告 ​ 目录 ✨一、需求设计 ✨二、概要设计 ✨三、详细设计 ✨四、调试结果 ✨五、测试结果 ✨附录:源程序代码(带注释) demo5类 Instrument类 Piano类 play类 Student类 Teacher类 Violin类 work类  实验五 接口的练习 实验

    2024年02月06日
    浏览(45)
  • Educoder/头歌JAVA——JAVA面向对象:String类

    String类的对象的创建 可以按照创建类的对象的一般方法来创建 String 类的对象: String string = new String(); 也可以直接在创建对象时指定字符串内容: String string1 = \\\"Hello World\\\"; //string1字符串内容为\\\"Hello World\\\" String string2 = \\\"\\\"; //string2字符串内容为空 length()方法 String 类中的 length() 方

    2024年02月03日
    浏览(62)
  • Educoder/头歌JAVA——JAVA面向对象:封装、继承和多态的综合练习

    目录 第1关:封装、继承和多态进阶(一) 相关知识 面向对象思想 封装 继承 组合和继承 构造函数 super()和this() 编程要求 第2关:封装、继承和多态进阶(二) 相关知识 重写和重载 abstract(抽象类)和interface(接口) final static static的作用 多态 编程要求 第

    2024年02月04日
    浏览(54)
  • 面向对象程序设计

    【面向对象程序设计】(OOP)与【面向过程程序设计】在思维方式上存在着很大的差别。【面向过程程序设计】中,算法是第一位的,数据结构是第二位的,这就明确地表述了程序员的工作方式。首先要确定如何操作数据,然后再决定如何组织数据,以便于数据操作。而【面

    2023年04月13日
    浏览(45)
  • C++《面向对象程序设计课程设计》

    《面向对象程序设计课程设计》课程说明 适用专业:计算机科学与技术 课程周数:5周 一、根据计算机科学与技术专业人才培养方案制订。 (一)课程设计性质 课程设计是学生对课程所学知识的综合运用,它与课堂听讲、上机实验、课外练习、自学研究相辅相成,构成一个

    2024年02月08日
    浏览(51)
  • Kotlin程序设计(二)面向对象

    我们在前面已经学习了Kotlin程序设计的基础篇,本章我们将继续介绍更多Kotlin特性,以及面向对象编程。 其实函数我们在一开始就在使用了: 我们程序的入口点就是 main 函数,我们只需要将我们的程序代码编写到主函数中就可以运行了,不过这个函数只是由我们来定义,而

    2024年02月01日
    浏览(52)
  • Python-基础篇-类与对象/面向对象程序设计

    “类”是物以类聚的 “类” 类 和 对象 是 面向对象编程的 两个 核心概念 类 是对一群具有 相同 特征 或者 行为 的事物的一个统称,是抽象的, 不能直接使用 特征 被称为 属性 行为 被称为 方法 类 就相当于制造飞机时的 图纸 ,是一个 模板 ,是 负责创建对象的 定义类📚

    2024年01月19日
    浏览(52)
  • 面向对象程序设计 之 文件输入输出流

    石 家 庄 铁 道 大 学 实 验 报 告 课程名称 面向对象程序设计 班级   姓名   学号   实验日期 2023.5.16 评分 100   实验项目名称:输入输出流 一、实验目的 掌握文本文件和二进制文件的基本访问方法; 了解一般I/O流和文件流的关系;了解文件与文件流的关系; 了解文件系统

    2024年02月05日
    浏览(50)
  • 面向对象程序设计第三次bolg

    本次博客针对面向对象程序设计的课程所发的PTA作业7,8以及期末考试中的面向对象编程题的分析和总结,重点介绍课程成绩统计程序系列题目以及期末考试的编程题。 在这次作业中7-1、7-2内容和考点相同,在此我分析一下7-2Hashmap的排序这个问题。 7-2 容器-HashMap-排序 分数

    2024年02月05日
    浏览(59)
  • C++面向对象程序设计 - 类和对象进一步讨论

            在C++中,关于面向对象程序设计已经讲了很大篇幅,也例举很多案例,此篇将通过一些习题来进一步了解对象、静态成员、指针、引用、友元、类模板等等相关知识。         示例代码:         如上代码,运行后结果如下图:          现在将上述代码中,第

    2024年04月16日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包