当前位置: 首页 > news >正文

C++自定义头文件使用(函数和类)

简单案例需求:
1,计算正方形和三角形的周长——函数
2,模拟不同类型的动物叫声——类

一、创建项目

C++空项目
Class_Study
在这里插入图片描述
在这里插入图片描述

二、创建主函数

在源文件下添加新建项,main.cpp
在这里插入图片描述
在这里插入图片描述

三、自定义头文件——函数

需求:1,计算正方形和三角形的周长

在头文件下添加新建项,Circumference.h
在源文件下添加新建项,Circumference.cpp
最好两个文件名称一致,头文件.h负责函数声明,.cpp用于函数实现
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
结构如下所示:
在这里插入图片描述

Circumference.h用于声明两个函数,分别用于计算正方形和三角形的周长
Circumference.cpp用于对两个函数的实现

Circumference.h 头文件函数声明

#pragma once
int square(int a);
int triangle(int a);

Circumference.cpp 相应函数实现

#include"Circumference.h"
int square(int a) 
{return a * 4;
}int triangle(int a) 
{return a * 3;
}

main.cpp 主函数

#include"Circumference.h"
#include<iostream>
int main(int argc,char* argv[])
{int queare_, triangle_;queare_ = square(5);triangle_ = triangle(5);std::cerr <<"queare is: " << queare_ << std::endl;std::cerr <<"triangle is: " << triangle_ << std::endl;return 0;
}

运行
在这里插入图片描述

结果
在这里插入图片描述

四、自定义头文件——类

需求:2,模拟不同类型的动物叫声——类

新建项为C++类
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
系统会生成对应的.h.cpp文件
在这里插入图片描述
Animal.h用于声明一个Animal类,里面有两个方法,cat和dog
Animal.cpp用于对Animal类里面的方法进行实现

Animal.h

#pragma once
class Animal
{
public:void cat();void dog();
};

Animal.cpp

#include "Animal.h"
#include<iostream>void Animal::cat() 
{std::cerr << "miaomiaomiao~~~" << std::endl;
}void Animal::dog()
{std::cerr << "wangwangwang~~~" << std::endl;
}

main.cpp

#include"Animal.h"
#include<iostream>
int main(int argc,char* argv[])
{Animal* a = new Animal();a->dog();a->cat();return 0;
}

运行
在这里插入图片描述

结果
在这里插入图片描述

五、完整项目,实现两个需求

Circumference.h

#pragma once
int square(int a);
int triangle(int a);

Animal.h

#pragma once
class Animal
{
public:void cat();void dog();
};

Circumference.cpp

#include"Circumference.h"
int square(int a) 
{return a * 4;
}int triangle(int a) 
{return a * 3;
}

Animal.cpp

#include "Animal.h"
#include<iostream>void Animal::cat() 
{std::cerr << "miaomiaomiao~~~" << std::endl;
}void Animal::dog()
{std::cerr << "wangwangwang~~~" << std::endl;
}

main.cpp

#include"Circumference.h"
#include"Animal.h"
#include<iostream>
int main(int argc,char* argv[])
{int queare_, triangle_;queare_ = square(5);triangle_ = triangle(5);std::cerr <<"queare is: " << queare_ << std::endl;std::cerr <<"triangle is: " << triangle_ << std::endl;Animal* a = new Animal();a->dog();a->cat();return 0;
}

项目结构
在这里插入图片描述

运行效果
在这里插入图片描述

http://www.lryc.cn/news/349745.html

相关文章:

  • 消息队列选型
  • ubuntu在conda环境中使用 pip install -r requirements.txt但是没有安装在虚拟环境中
  • 力扣127.单词接龙讲解
  • latex笔记
  • 秋招算法——AcWing101——拦截导弹
  • IDEA不能创建新项目和新模块
  • WebRTC 的核心:RTCPeerConnection
  • LeetCode hot100-39-N
  • NumPy常用操作
  • 学习笔记——字符串(单模+多模+练习题)
  • DOT + graphviz 轻松画图
  • 使用Vue调用ColaAI Plus大模型,实现聊天(简陋版)
  • Unity使用sherpa-onnx实现离线语音合成
  • Elasticsearch入门基础和集群部署
  • 12、24年--信息系统治理——IT治理
  • Electron学习笔记(三)
  • 【Redis】Redis键值存储
  • C++系统编程篇——Linux初识(系统安装、权限管理,权限设置)
  • No Cortex-M SW Device Found
  • 提升写作效率的秘密武器:一个资深编辑的AI写作体验
  • Python sort() 和 sorted() 的区别应用实例详解
  • 七、Redis三种高级数据结构-HyperLogLog
  • 2024年【金属非金属矿山(露天矿山)安全管理人员】模拟考试题库及金属非金属矿山(露天矿山)安全管理人员作业模拟考试
  • 网站DDoS攻击应对策略:全面防护与恢复指南
  • 线性/非线性最小二乘 与 牛顿/高斯牛顿/LM 原理及算法
  • mysqldump: Error 2013 导致mysql停止运行
  • 2023年数维杯国际大学生数学建模挑战赛D题洗衣房清洁计算解题全过程论文及程序
  • python 两种colorbar 最大最小和分类的绘制
  • Linux-基础IO
  • 202006青少年软件编程(Python)等级考试试卷(二级)