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

c#笔记-创建一个项目

创建一个项目

创建控制台程序

在你安装完成Visual Studio后打开它,你会的到一个启动窗口
在这里插入图片描述
点击创建新项目,选择右上角c#的没有Framework的控制台应用。
在这里插入图片描述
项目名称,位置自己随意。
目标框架选择NET7.0。

项目创建完成后应该你的界面应该类似于这样:
在这里插入图片描述

运行程序

点击菜单里的播放键可以运行程序
在这里插入图片描述
其中,左边的带有项目名字的深色播放键是调试。
编译器会在运行这个程序时同时监视他的CPU,内存使用情况。
右侧浅色播放键是仅运行。快捷键Ctrl+F5

然后,你应该会出现一个默认黑底白字的框框,出现类似下面的内容
在这里插入图片描述

解决方案管理器

解决方案:解决方案是包含项目的集合,它们共同实现一个目标。解决方案本身不直接影响编译或运行,它只是类似于一个目录一样把相关的项目,文件,文件夹组织起来,方便你查看和导航。

  • 项目:编译为程序集的基本单位。编译和运行都作用整个项目。
    • 依赖项
      • 包:类似于游戏中的mod或dlc。提供了一些封装好的代码。就像你的代码一样生效,但你不能修改里面的内容。
      • 分析器:分析你的源码的程序。自动补全,代码提示这些都由分析器提供。
      • 框架:框架是为了某一功能封装的一系列包。
      • 项目:直接引用其他的项目中的代码或资源,不需要复制或修改任何文件,也不需要额外的打包步骤,就能在你的项目中使用它们。
    • 源码文件:这是你编写的源码,他们在编译后会变成一个可执行文件(exe)或是动态链接库(dll)文件。他们都能被别的程序执行其中的部分内容。但可执行文件可以自己独立执行。

在这里插入图片描述

程序入口

顶级语句

在你运行程序以后会弹出一个窗口,显示一行文字:Hello world

现在将代码中的所有东西再复制一遍。然后运行,就会得到两行Hello world
在这里插入图片描述
显然,我们的程序是写在这里的。 在这里写了什么,什么就会生效。

Main方法

你可能会说这不废话吗。这么大一片白只有这里有东西。不写这写哪?

嗯。。。确实。不过这是一个新版本的功能。大部分培训机构和学校都不会使用这个功能。
所以你必须知道,在老版本中,长什么样。你在网上找到的大部分文章,都会使用老版本的格式。

如果你在之前创建项目的时候勾选了这个勾,他会以老版本的格式创建示例程序。
在这里插入图片描述
我们的代码,将写在这里面
在这里插入图片描述
并没有什么配置或选项。只因为他是一个名为Main的方法(还有这一堆修饰词),所以他就是程序的开始。
在Main方法中(这一对括号内)右键可以切回去。
在这里插入图片描述

多个程序入口点

如果一个项目没有程序入口点,那么他就是dll文件。如果他有入口点,那么就是exe文件。
如果同时存在多个顶级语句(分散在不同的源码文件中),或是有多个Main方法。
那么是会报错的。

在这里插入图片描述
在这里插入图片描述

但是如果只有一个文件有顶级语句,那么无论你有多少个Main方法都没关系。
因为顶级语句有更高的优先级,当他存在时,Main方法会被无视。

提示

内联提示

打开工具->选项->搜索框内写内联。
在这里插入图片描述
按照自己的喜好选择行尾或最右侧。
在这里插入图片描述
然后拉到最下面,勾选这些:
在这里插入图片描述


然后你在代码里随便输点什么,你会发现在主界面就会提示你错误
在这里插入图片描述
并且初始代码的中间还多了灰色的小提示。那个提示不能选中,但是鼠标放上去会有东西。

在这里插入图片描述

文档注释

当一个程序被打包以后,里面的文档注释会被单独提取出来,做成一个文本文件。
也就是说,注释和程序是分开的,你可以随意改动注释不会出现问题。

你可以点击这里跳转到下载页面。
中文的文档注释没有适配最新版本的注释包。但是因为上述特点,可以将就着使用它。

找到.NET 安装文件夹,默认情况下,你在上方的路径里输入:%ProgramFiles%\dotnet\packs
就能跳转到。
在这里插入图片描述
打开下载来的压缩包。找到和压缩包里对应名字的文件夹。
在这里插入图片描述
依次打开最新版本,ref,唯一的文件夹。里面有一大堆xml文件。
把压缩包里面对应文件夹里的zh-hans文件夹拖到这个目录里。
在这里插入图片描述
最后重启VS就行了
在这里插入图片描述

跳转帮助

如果看到一个你看不懂的东西,可以把光标放在他上面,然后按F1。VS会启动你的默认浏览器,打开官网对此代码的说明书。
并且是中文的。

对于错误,你可以点击他的编号查看错误的帮助。

不过错误的帮助跳转是英文的,你需要在那个网页滚动到最下方,切换语言。
在这里插入图片描述

编写辅助

自动补全

按下回车换行,将上面的代码抄写一遍,你会发现在输入的时候会出现代码提示
在这里插入图片描述
使用方向键的上下可以选中代码
按下空格,Tab,回车,或大部分符号键会把选中的这一块弄上去。
在这里插入图片描述
这些有星星的表示这些东西是可以直接放这里用的。但是这种置顶没有在下面的列表中去除掉相同的。
用置顶的和用下面一样的是一样的效果。

代码预测

新版的VS代码提示学习了一堆范例代码,于是可以根据上下文推测你想要的代码。
在这里插入图片描述
在这里插入图片描述
按下Tab可以把这些灰色的代码直接补上去。

自动排版

这项功能在VS中叫格式化文档。
他会自动操控你的换行,空格,缩进。
比如你给初始代码的点左右加空格
在这里插入图片描述
按住Ctrl键,依次按下K,D键。就会触发自动排版。

相关文章:

c#笔记-创建一个项目

创建一个项目 创建控制台程序 在你安装完成Visual Studio后打开它,你会的到一个启动窗口 点击创建新项目,选择右上角c#的没有Framework的控制台应用。 项目名称,位置自己随意。 目标框架选择NET7.0。 项目创建完成后应该你的界面应该类似…...

Photoshop如何使用图像调色之实例演示?

文章目录 0.引言1.将一张偏冷调的图像调整成暖调2.将图像调整成不同季节色彩倾向3.变换花朵的颜色4.创建人像轮廓风景5.修饰蓝天白云6.调换花草颜色 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及其配…...

IDEA中使用Git提交代码提示:您即将把CRLF行分隔符提交到Gt仓库。 建议将core.autocrlf Git特性设置为trUe,以免发生行分隔符问题。

IDEA中使用Git提交代码提示:您即将把CRLF行分隔符提交到Gt仓库。 建议将core.autocrlf Git特性设置为trUe,以免发生行分隔符问题。 问题背景: 在IDEA中,使用Git提交代码到远程仓库时,结果弹出一个警告窗口 问题原因: …...

ArduPilot之开源代码LibrarySketches设计

ArduPilot之开源代码Library&Sketches设计 1. 简介1.1 Core libraries1.2 Sensor libraries1.3 Other libraries 2. 源由3. Library Sketches设计3.1 设计框架3.2 Example Sketches3.3 AP_Common Sketches3.3.1 配置sitl环境3.3.2 编译AP_Common3.3.3 运行AP_Common3.3.4 代…...

第一章:概述

1,因特网概述 1.网络、互联网和英特网 网络(Network)由若干结点(Node)和连接这些结点的链路(Link)组成。 多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互联网(或互连网)。因此,互联网是“网络的网络…...

MySQL --- DDL图形化工具表结构操作

一. 图形化工具 1. 介绍 前面我们讲解了DDL中关于数据库操作的SQL语句,在我们编写这些SQL时,都是在命令行当中完成的。大家在练习的时候应该也感受到了,在命令行当中来敲这些SQL语句很不方便,主要的原因有以下 3 点:…...

归一化处理(2023寒假每日一题 14)

在机器学习中,对数据进行归一化处理是一种常用的技术。 将数据从各种各样分布调整为平均值为 0 0 0、方差为 1 1 1 的标准分布,在很多情况下都可以有效地加速模型的训练。 这里假定需要处理的数据为 n n n 个整数 a 1 , a 2 , ⋯ , a n a_1,a_2,⋯…...

无公网IP,外网远程连接MySQL数据库

哈喽~大家好,这篇来看看无公网IP,外网远程连接MySQL数据库。 文章目录 前言1. 检查mysql安装状态2. 安装配置cpolar内网穿透3. 创建tcp隧道,映射3306端口4. 公网远程连接4.1 图形化界面4.2 使用命令行远程连接 5. 配置固定tcp端口地址5.1 保留…...

OJ刷题 第十四篇(递归较多)

23204 - 进制转换 时间限制 : 1 秒 内存限制 : 128 MB 将一个10进制数x(1 < x < 100,000,000)转换成m进制数(2< m < 16) 。分别用 ABCDEF表示10以上的数字。 输入 x m (1 < x < 100,000,000, 2< m < 16) 输出 m进制数 样例 输入 31 16 输出 1F 答…...

FileZilla读取目录列表失败(vsftpd被动模式passive mode部署不正确)

文章目录 现象问题原因解决方法临时解决&#xff08;将默认连接方式改成主动模式&#xff09;从根本解决&#xff08;正确部署vsftpd的被动模式&#xff09; 现象 用FileZilla快速连接vsftpd服务器时&#xff0c;提示读取目录列表失败 问题原因 是我vsftpd服务端的被动模式没…...

【Java面试八股文】数据库篇

导航&#xff1a; 【黑马Java笔记踩坑汇总】JavaSEJavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线MySQL高级篇设计模式牛客面试题 目录 请你说说MySQL索引,以及它们的好处和坏处 请你说说MySQL的索引是什么结构,为什么不用哈希表 请你说说数据库索引的底…...

Android Glide加载图片、网络监听、设置资源监听

再搞事情之前首先创建一个项目&#xff0c;就命名为GlideDemo吧。    一、项目配置 创建好之后&#xff0c;在app模块下build.gradle的dependencies闭包中添加如下依赖&#xff1a; //glide//glideimplementation com.github.bumptech.glide:glide:4.11.0annotationProcess…...

等保定级报告模版

等保定级怎么做_luozhonghua2000的博客-CSDN博客 上篇给大家说清楚了,等保定级怎么做,但在日常工作中,需要向上级或甲方输出定级报告,这篇我降弄个模版供大家参考。 信息系统安全等级保护定级报告 XX 平台系统描述 (一) 2023年5月,XX 正式上线,XX 隶属于深圳 XX 科技…...

计算机组成原理4.2.2汉明码

编码的最小距离 奇校验和偶校验 看1的个数是奇数 还是偶数 汉明码 汉明码的配置 根据不等式&#xff0c;确定增添几位&#xff0c;根据指数放置增添位 汉明码的检错 分不同检测小组 分组规则&#xff1a;哪位为’1‘就是哪组元素。 1号位为‘1’的都是第一组元素&#…...

JavaScript全解析——本地存储的概念、用法详解

本地存储概念&#xff1a; 就是浏览器给我们提供的可以让我们在浏览器上保存一些数据 常用的本地存储 localStorage sessionStorage localStorage 特点: 1.长期存储,除非手动删除否则会一直保存在浏览器中&#xff0c;清除缓存或者卸载浏览器也就没有了 2.可以跨页面通讯,…...

对象浅拷贝的5种方式

参考原文:浅拷贝的五种实现方式 - 掘金 (juejin.cn) 哈喽 大家好啊 最近发现自己对对象都不是很熟练&#xff0c;特别是涉及到一些复制&#xff0c;深浅拷贝的东西 1.Object.assign 首先 我们创建一个空对象obj1 然后创建一个对象obj2 用object.assign(目标对象&#xff0c…...

Java每日一练(20230504)

目录 1. 位1的个数 &#x1f31f; 2. 移除元素 &#x1f31f; 3. 验证二叉搜索树 &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 位1的个数 编写一个…...

【深度学习】计算机视觉(13)——模型评价及结果记录

1 Tensorboard怎么解读&#xff1f; 因为意识到tensorboard的使用远不止画个图放个图片那么简单&#xff0c;所以这里总结一些关键知识的笔记。由于时间问题&#xff0c;我先学习目前使用最多的功能&#xff0c;大部分源码都包含summary的具体使用&#xff0c;基本不需要自己修…...

项目经理在项目中是什么角色?

有人说&#xff0c;项目经理就是一个求人的差事&#xff0c;你是在求人帮你做事。 有人说&#xff0c;项目经理就是一个与人扯皮的差事&#xff0c;你要不断的与开发、产品、测试等之间沟通、协调。 确实&#xff0c;在做项目的时候&#xff0c;有的人是为了完成功能&#x…...

【技术分享】防止根据IP查域名,防止源站IP泄露

有的人设置了禁止 IP 访问网站&#xff0c;但是别人用 https://ip 的形式&#xff0c;会跳到你服务器所绑定的一个域名网站上 直接通过 https://IP, 访问网站&#xff0c;会出现“您的连接不是私密连接”&#xff0c;然后点高级&#xff0c;会出现“继续前往 IP”&#xff0c;…...

如何用本地OCR工具快速提取视频硬字幕:3步完成专业字幕制作

如何用本地OCR工具快速提取视频硬字幕&#xff1a;3步完成专业字幕制作 【免费下载链接】video-subtitle-extractor 视频硬字幕提取&#xff0c;生成srt文件。无需申请第三方API&#xff0c;本地实现文本识别。基于深度学习的视频字幕提取框架&#xff0c;包含字幕区域检测、字…...

BetterOCR:融合多引擎OCR与LLM的智能文档理解方案

1. 项目概述&#xff1a;当OCR遇上AI&#xff0c;一场关于“理解”的进化 最近在折腾一个文档自动化的项目&#xff0c;发现传统的OCR&#xff08;光学字符识别&#xff09;工具虽然能把图片里的文字“读”出来&#xff0c;但效果总差那么点意思。比如&#xff0c;一张随手拍的…...

AI工作流框架实战:从脚本到自动化流程的架构设计与应用

1. 项目概述&#xff1a;当AI遇上工作流最近在折腾自动化工具链&#xff0c;发现一个挺有意思的项目叫ai-flow。这名字听起来就挺直白&#xff0c;AI 工作流。简单来说&#xff0c;它就是一个用代码来编排和自动化AI任务&#xff08;比如调用大语言模型、处理数据、执行特定操…...

本地AI网关实战:统一管理多模型服务,实现智能路由与成本控制

1. 项目概述&#xff1a;一个本地化的AI网关如果你正在同时使用多个AI模型服务商&#xff0c;比如OpenAI、Anthropic、Google Gemini&#xff0c;或者还在本地运行着Ollama、vLLM这样的模型&#xff0c;那你一定体会过那种切换的繁琐。每个客户端、每个脚本都要配置不同的API密…...

【信息科学与工程学】【安全领域】第二十七篇 几何学在网络安全的应用(1)

网络安全中的几何学应用全景 一、几何学与网络安全的核心联系框架 1.1 几何思维在网络安全的映射 几何概念 网络安全映射 安全价值 应用本质 空间与距离​ 特征空间、异常距离 相似性度量、异常检测 量化“正常”与“异常”的距离 拓扑结构​ 网络连接图、攻击路径 …...

嵌入式开发十年痛点解析:技术栈、多核与安全的实战解法

1. 从一场会议邀约说起&#xff1a;嵌入式程序员的“午夜惊魂”前几天整理旧资料&#xff0c;翻到了2014年嵌入式系统大会&#xff08;ESC&#xff09;编程专题的公开征集帖&#xff0c;发起人是当时ARM的培训经理Chris Shore。帖子标题很有意思&#xff0c;叫“什么让你夜不能…...

Ctool:一站式解决开发者的日常编码烦恼

Ctool&#xff1a;一站式解决开发者的日常编码烦恼 【免费下载链接】Ctool 程序开发常用工具 chrome / edge / firefox / utools / windows / linux / mac 项目地址: https://gitcode.com/gh_mirrors/ct/Ctool 在日常开发工作中&#xff0c;我们常常需要处理各种编码转换…...

淘宝淘金币自动化脚本终极指南:每天节省20分钟,彻底解放双手

淘宝淘金币自动化脚本终极指南&#xff1a;每天节省20分钟&#xff0c;彻底解放双手 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/t…...

Perplexity Stack Overflow查询响应延迟超8秒?紧急修复指南:从token压缩到领域微调的4层加速方案

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity Stack Overflow查询响应延迟超8秒&#xff1f;紧急修复指南&#xff1a;从token压缩到领域微调的4层加速方案 当Perplexity在Stack Overflow数据源上出现平均响应延迟 > 8s 的告警时&am…...

算力入门:从FLOPS到PUE全解析

算力入门:FLOPS、TFLOPS、EFLOPS、算力规模、能效比、PUE 全解 算力(计算能力)是衡量计算机系统性能的关键指标,尤其在科学计算、人工智能和大数据处理等领域至关重要。本指南将逐步解释FLOPS、TFLOPS、EFLOPS、算力规模、能效比和PUE这些核心概念,帮助您快速入门。所有内…...