NJUPT面向对象程序设计及C++mooc编程(第三章)--by sCh3n

2023-11-02 22:19

本文主要是介绍NJUPT面向对象程序设计及C++mooc编程(第三章)--by sCh3n,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一题

定义一个学生类 Student ,要求如下: 

设计私有数据成员: 

①年龄 int age; ②姓名 char *name; 

公有成员函数: 

①构造函数 带参数的构造函数 Student(int m,char *n) ; 

②不带参数的构造函数 Student  (  ) ; 

③析构函数 ~ Student  (  ) ; 释放由 name 申请的动态空间 

④改变数据成员值函数 void SetMember ( int m,char *n ) ; 

⑤获取年龄的成员函数 int Getage  (  ) ; 

⑥获取名字的成员函数 char *Getname  (  ) ; 

代码

#include<iostream>
#include<string.h>
using namespace std;
class Student
{private:int age;char *name=new char[10];public:Student (int m,const char *n){age=m;strcpy(name,n);}Student (){age=0;strcpy(name,"unnamed");}~Student(){delete []name;}void SetMember (int m,const char *n){age=m;strcpy(name,n);}int Getage (){return age;}char *Getname (){return name;}
};
int main()
{Student stu[3]={Student(13,"wang")};stu[2].SetMember(12,"zhang");for(int i=0; i<3;i++)cout<<stu[i].Getage( )<<","<<stu[i].Getname( )<<"\n";return 0;
}

第二题

设计一个Car类,它的数据成员要能描述一辆汽车的品牌,型号,出厂年份和价格,成员函数包括提供合适的途径来访问数据成员,在main()函数中定义类的对象并调用相应成员函数。

设计私有数据成员:

string brand;  或者char *brand;

string type; 或者char *type;

int year;

double price;

公有成员函数:

构造函数  :默认品牌undefinition,默认型号undefinition,默认年份2000,默认价格 0;

获取数据成员的函数: 

代码

#include<iostream>
using namespace std;
class Car
{private:string brand;string type;int year;double price;public:Car(string b="undefinition",string t="undefinition",int y=2000,double p=0){brand=b;type=t;year=y;price=p;	}string GetBrand(){return brand;}string GetType(){return type;}int GetYear(){return year;}double GetPrice(){return price;}
};
int main() { Car car1("FIAT","Palio",2021,6.5); cout<<car1.GetBrand()<<" "<<car1.GetType()<<" "<<car1.GetYear() <<" " <<car1.GetPrice()<<endl; Car car2; cout<<car2.GetBrand()<<" "<<car2.GetType()<<" "<<car2.GetYear()<<" " <<car2.GetPrice()<<endl; return 0; }

这篇关于NJUPT面向对象程序设计及C++mooc编程(第三章)--by sCh3n的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/333666

相关文章

C++中使用vector存储并遍历数据的基本步骤

《C++中使用vector存储并遍历数据的基本步骤》C++标准模板库(STL)提供了多种容器类型,包括顺序容器、关联容器、无序关联容器和容器适配器,每种容器都有其特定的用途和特性,:本文主要介绍C... 目录(1)容器及简要描述‌php顺序容器‌‌关联容器‌‌无序关联容器‌(基于哈希表):‌容器适配器‌:(

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

C++中实现调试日志输出

《C++中实现调试日志输出》在C++编程中,调试日志对于定位问题和优化代码至关重要,本文将介绍几种常用的调试日志输出方法,并教你如何在日志中添加时间戳,希望对大家有所帮助... 目录1. 使用 #ifdef _DEBUG 宏2. 加入时间戳:精确到毫秒3.Windows 和 MFC 中的调试日志方法MFC

深入理解C++ 空类大小

《深入理解C++空类大小》本文主要介绍了C++空类大小,规定空类大小为1字节,主要是为了保证对象的唯一性和可区分性,满足数组元素地址连续的要求,下面就来了解一下... 目录1. 保证对象的唯一性和可区分性2. 满足数组元素地址连续的要求3. 与C++的对象模型和内存管理机制相适配查看类对象内存在C++中,规

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#反射编程之GetConstructor()方法解读

《C#反射编程之GetConstructor()方法解读》C#中Type类的GetConstructor()方法用于获取指定类型的构造函数,该方法有多个重载版本,可以根据不同的参数获取不同特性的构造函... 目录C# GetConstructor()方法有4个重载以GetConstructor(Type[]

C++11的函数包装器std::function使用示例

《C++11的函数包装器std::function使用示例》C++11引入的std::function是最常用的函数包装器,它可以存储任何可调用对象并提供统一的调用接口,以下是关于函数包装器的详细讲解... 目录一、std::function 的基本用法1. 基本语法二、如何使用 std::function

【C++ Primer Plus习题】13.4

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream>#include "port.h"int main() {Port p1;Port p2("Abc", "Bcc", 30);std::cout <<

C++包装器

包装器 在 C++ 中,“包装器”通常指的是一种设计模式或编程技巧,用于封装其他代码或对象,使其更易于使用、管理或扩展。包装器的概念在编程中非常普遍,可以用于函数、类、库等多个方面。下面是几个常见的 “包装器” 类型: 1. 函数包装器 函数包装器用于封装一个或多个函数,使其接口更统一或更便于调用。例如,std::function 是一个通用的函数包装器,它可以存储任意可调用对象(函数、函数

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�