Visual Studio如何进行类文件的管理(类文件的分离)

大家好:

        衷心希望各位点赞。

        您的问题请留在评论区,我会及时回答。 

一、问题背景

        实际开发中,类的声明放在头文件中,给程序员看类的成员和方法。比如:Dog.h(类的声明文件)

        类的成员函数的具体实现,保存在 .cpp 文件中。比如:Dog.cpp(类的方法文件)

        其他文件,如果需要使用这个类,就包含这个类的头文件。比如:test.h

二、项目文件结构

        一图胜千言,解释放后面:

        类的声明 Dog.h 放在头文件目录中, 类的成员函数的实现放在源文件目录下的 Dog.cpp 文件中,test.cpp 是用来放测试代码的文件。

二、代码

1、Dog.h的代码

#pragma once#include <string>using namespace std;//类的声明文件
class Dog{
private:string name;int age;
public:Dog(string name, int age);void sleep();void eat();void say();
};

2、Dog.cpp的代码

//类的具体实现:用来实现类Dog的具体方法#include "Dog.h"
#include <iostream>
#include <string>using namespace std;Dog::Dog(string name, int age) {this->name = name;this->age = age;
}void Dog::eat() {cout << "吃饭啦" << endl;
}void Dog::sleep() {cout << "睡觉啦" << endl;
}void Dog::say() {cout << this->name << endl;cout << this->age << endl;
}

3、test.cpp的代码

#include <iostream>
#include "Dog.h"using namespace std;int main() {Dog dog("旺仔", 3);//创建Dog对象dog.eat();//输出 吃饭啦dog.sleep();//输出 睡觉啦dog.say();//输出 旺仔 3system("pause");return 0;
}

三、运行截图

 四、总结

        在使用 Visual Studio 开发项目的时候,学会进行“类文件的分离”十分重要。这会帮助开发者管理项目更加轻松。

        实际开发中,类的声明放在头文件中,给程序员看类的成员和方法。比如:Dog.h(类的声明文件)

        类的成员函数的具体实现,保存在 .cpp 文件中。比如:Dog.cpp(类的方法文件)

        其他文件,如果需要使用这个类,就包含这个类的头文件。比如:test.h

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/728995.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

风机基础防冲刷措施有那些?

在文章如果在海底插一根桩或者棍子&#xff0c;它的冲刷范围和深度如何&#xff1f;里&#xff0c;局部冲刷比如在海底插一根桩&#xff0c;会经历纵向切蚀、横向扩展和稳定状态三个过程&#xff0c;历时大约20h&#xff0c;之后最大冲刷深度基本不变&#xff0c;冲刷达到稳定状…

【Javascript】数组的方法清单

数组的类型相关 方法描述备注Array.isArray()判断是否为数组toString()将数组转换为字符串不会改变原数组join()将数组转换为字符串&#xff0c;返回结果为转换后的字符串不会改变原数组字符串的方法&#xff1a;split()将字符串按照指定的分隔符&#xff0c;组装为数组不会改…

继承,切片,隐藏

定义&#xff1a; 子类&#xff08;派生类&#xff09;继承了父类&#xff08;基类&#xff09;的成员函数和成员变量&#xff08;类层次的复用&#xff09; 赋值 子类可以赋值给父类。父类不可以直接复制给子类 &#xff08;不像不同内置类型的赋值要转化为临时变量&#xf…

MySQL产生死锁的根本原因及解决方法

概念 死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等的进程称为死锁进程 一、 什么是死锁 死锁是指两个或两个以上的进程在执行过程中,因争夺…

U盘上文件夹突然空了?掌握3个方法,轻松找回数据!

“我的u盘插上之后&#xff0c;不知道为什么就空了&#xff0c;里面所有的文件都没有了&#xff0c;有什么方法可以找回u盘里丢失的文件吗&#xff1f;” 在日常使用U盘的过程中&#xff0c;我们有时会遇到一个令人头疼的问题&#xff0c;U盘上的文件夹突然空了。这究竟是怎么回…

Windows系统安装MongoDB并结合内网穿透实现公网访问本地数据库

文章目录 前言1. 安装数据库2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射2.3 测试随机公网地址远程连接 3. 配置固定TCP端口地址3.1 保留一个固定的公网TCP端口地址3.2 配置固定公网TCP端口地址3.3 测试固定地址公网远程访问 前言 MongoDB是一个基于分布式文件存储的数…

DHCP部署与安全

在当今快速发展的网络世界中&#xff0c;动态主机配置协议&#xff08;DHCP&#xff09;扮演着至关重要的角色。这项技术不仅简化了网络管理&#xff0c;还提高了网络资源的利用率。本文旨在深入探讨DHCP的工作原理、优势以及如何有效部署和保护DHCP服务器。 一、DHCP作用 自…

Flutter的线程模型

在Flutter框架中&#xff0c;Embedder层负责把Flutter嵌入到各个平台上去&#xff0c;其所做的主要工作包括线程设置、渲染Surface设置&#xff0c;以及插件等。因此&#xff0c; Embedder负责线程的创建和管理&#xff0c;并且提供Task Runner给Engine使用。Engine则是负责提供…

Mysql深入学习 基础篇 Ss.05多表查询语法及案例

世界总是在推着我走&#xff0c;我自己一个人也能站稳 —— 24.3.7 一、多表关系 1.概述 项目开发中&#xff0c;在进行数据库表结构设计时&#xff0c;会根据业务需求及业务模块之间的关系&#xff0c;分析并设计表结构&#xff0c;由于业务之间相互关联&#xff0c;所以各个…

Croissant:Google新推出的一个为机器学习准备的数据集元数据格式

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

优雅应对商业谈判中的软件质疑

在软件开发的道路上&#xff0c;商业谈判是不可避免的一环。然而&#xff0c;当他人指出软件UI设计或功能存在问题时&#xff0c;如何优雅而有效地应对成为了关键。以下是一些建议&#xff0c;帮助你在类似情况中妥善处理&#xff0c;维护好你的软件开发声誉。 1. 保持冷静与专…

【易飞】易飞ERP自动审核程序功能

易飞ERP自动审核程序功能 一、 使用场景二、 操作说明三、 安装方式 一、 使用场景 OA系统集成 与第三方OA系统软件集成&#xff0c;在OA软件审核完成后&#xff0c;直接将ERP中的单据审核。MES系统集成 MES系统生成单据写入到易飞ERP中&#xff0c;并需要自动审核单据&#x…

Java流:释放顺序与并行数据处理的潜能

引言&#xff1a; Java Streams API 是 Java 编程语言中处理集合数据的重要工具&#xff0c;它提供了一种简洁、灵活的方式来操作数据&#xff0c;大大提高了代码的可读性和可维护性。Streams API 的出现为数据处理带来了革命性的变化&#xff0c;使得开发者能够以一种更为直观…

如何学习、上手点云算法(三):用VsCode、Visual Studio来debug基于PCL、Open3D的代码

写在前面 本文内容 以PCL 1.14.0&#xff0c;Open3D0.14.1为例&#xff0c;对基于PCL、Open3D开发的代码进行源码debug&#xff1b; 如何学习、上手点云算法系列&#xff1a; 如何学习、上手点云算法(一)&#xff1a;点云基础 如何学习、上手点云算法(二)&#xff1a;点云处理相…

数据挖掘案例分析

数据挖掘是指从大量数据中挖掘出有价值的信息和知识的过程。在当今信息爆炸的时代&#xff0c;各个领域都积累了大量的数据&#xff0c;而这些数据中蕴藏着许多有价值的信息&#xff0c;可以帮助企业做出决策、优化运营等。因此&#xff0c;数据挖掘应用已经成为了企业和组织中…

网络编程(3/7)

网络聊天室 服务器 #include <myhead.h> #define SER_IP "192.168.125.64" #define SER_PORT 6666 typedef struct Msg {char user[32]; //用户名int type; //1.登录、2.发消息、0.退出char text[1024]; //消息 } msg_t; typedef struct List {stru…

跟无神学AI之Tensorflow笔记搭建网络八股

虽然Pytorch在论文中使用较多&#xff0c;但是像Alphafold在蛋白质结构预测的模型&#xff0c;仍然是用Tensorflow写成&#xff0c;遂近期在学其中的语法。 本系列来自慕课北大软微曹健老师的Tensorflow笔记&#xff0c;摘选其中重要部分。 1.导包 2.定义训练集测试集和数据…

Android随手记

activity的生命周期 创建时 onCreate() - onStart() - onResume() - onPause() - onStop() - onDestroy() 切换时 a切换到b a.onCreate() - a.onStart() - a.onResume - a.onPause - b.onCreate() - b.onStart() - b.onResume() - a.onStop() b切换回a b.onPause() - a.onR…

C#与python交互(flask发送Get/Post请求)

先运行python&#xff0c;再运行C# **ps: 注意修改端口号**python发送Get/Post请求 # -*- coding: utf-8 -*- # Time : 2024/1/25 15:52 # Author : YY # File : post_test.py # Content&#xff1a;提交数据给客户端 from flask import Flask, request, jsonify, redirect…

华为OD机试 - 字符串统计(Java 2024 C卷 100分)

目录 专栏导读一、题目描述二、输入描述三、输出描述1、输入2、输出3、说明 四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2024C卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&a…