你好,我是悦创。
在 macOS 上创建 C# 项目,通常推荐使用 .NET Core
,这是一个跨平台的开发框架。以下是你可以遵循的步骤来创建一个新的 C# 项目:
1. 安装 .NET Core SDK
首先,你需要安装 .NET Core SDK
。你可以从.NET官方网站下载并安装最新的 .NET Core SDK。安装完成后,你可以在终端中运行以下命令来验证安装:
1. ATM 机系统
编写一个Python程序,使用 while
循环实现一个基础的ATM机系统。程序应该具备以下功能:
- 初始设定: 程序开始时,要求用户设定初始的账户余额。
- 交互菜单: 用户可以通过输入选择查看余额、存款、取款或退出。
- 存款功能: 用户选择存款后,输入存款金额并更新余额。
- 取款功能: 用户选择取款时,先检查账户余额是否足够,足够则扣除相应金额,不够则提示余额不足。
- 查看余额: 允许用户随时查看当前余额。
- 退出系统: 用户选择退出时,打印一条消息确认并结束程序。
1. 继承
1.1 继承
继承允许我们根据一个类来定义另一个类。这使得创建和维护应用程序变得简单。
其属性被另一个类继承的类称为 Base 类(基类)。 继承属性的类称为 Derived 类(派生类)。
例如,基类 Animal 可以用来派生出 Cat 和 Dog 类。
派生类继承了基类的所有特性,并且还可以拥有自己的附加特性。
【单选题】假设 Employee 类继承 Person 类的,那么 Person 类叫什么?
A. 派生类
B. 基类✅
1.2 继承的实现
根据一个用户-电影评分矩阵,对给定的用户(用户1到用户10)进行电影推荐。
- 加载数据集“评分.csv”,查看数据。
- 对电影矩阵进行SVD降维,因为用户不可能把所有电影都看了,只看了少数电影。
- 利用SVD,得到对应的奇异值,按照一定标准进行奇异值的筛选,即确定 k 值。这里采用取奇异值平方和的百分比。
公众号:AI悦创【二维码】
1. 析构函数
1.1 析构函数
构造函数是在实例化类时使用的,而析构函数则是在对象被销毁或删除时自动调用。
析构函数具有以下属性:
-
一个类只能有一个析构函数。
-
析构函数只能被自动调用。
-
析构函数不带任何修饰符或参数。
-
析构函数的名称与类名完全相同,然后带上波浪号(
~
)前缀。
例如:
class Dog
{
~Dog()
{
// 要操作的逻辑代码
}
}
恭喜你呀,成功步入人生的另一个重要阶段,我这辈子最爱的老婆,要当妈妈了!也是你为我赋予当爸爸的机会。在和可爱的宝贝见面前的这段时间,产检是必不可少的,相信老婆也有很多问题想要了解。
1. 产检必须要建档吗?
答:是
建档是非常重要的!
-
一来方便医生对准妈妈各项情况进行追踪,及时进行科学的孕期管理;
-
二来建档后准妈妈才可以在 建档所在的医院分娩;
-
三来对于有生育保险的准妈妈来说,一定要在定点医院建档才能享受生育保险哦~
1. 数组
1.1 数组
C# 提供了许多内置的类来存储和操作数据。
数组(Array)就是其中的一种。
数组是一种用于存储数据集合的数据结构。你可以把它看作是一个同类型变量的集合。
例如,需要存储 100 个号码的情况,你可以考虑声明一个能存储 100 个元素的数组对象,而不是声明一百个变量。
数组的声明格式如下:数字类型[] 数组名称
int[ ] myArray;
1. 类和对象
1.1 什么是类
正如我们在前面的模块中所看到的那样,内置的数据类型用于在声明的变量中存储单个值。例如,int x
在一个名为 x 的变量中存储一个整型值。
在面向对象的编程中,类是一种数据类型,它定义了一组声明对象的变量和方法。
例如,要创建管理银行帐户的程序,则可以使用 BankAccount 类声明一个对象,该对象具有管理各个银行帐户所需的所有属性和方法,如余额,存钱和取款的方法等。
一个类就像一个蓝图。它定义了一个类型的数据和行为。类定义以关键字 class 开头,后面跟着类名。类体包含花括号里面的数据和操作。如刚才提到的 BankAccount 类:
你好,我是悦创。
在 C# 中,**委托(Delegate)和事件(Event)**是两个密切相关的概念。它们通常用于实现事件驱动编程。以下是它们的定义和区别:
1. 委托
委托是一个数据结构,它定义了一种类型,可以存储一个或多个方法的引用。委托类似于 C++ 中的函数指针,但更安全。它允许你将方法作为参数传递,并且可以动态调用这些方法。使用委托的主要步骤如下:
- 定义委托类型:
public delegate void MyDelegate(string message);
- 创建委托实例:
MyDelegate del = new MyDelegate(SomeMethod);
- 调用委托:
del("Hello, World!");
下面的程序为什么报错:
{
public T[] client;
public Bank(T[] _client)
{
client = _client;
}
}
class Program
{
static void Main(string[] args)
{
Bank<int> bank1 = new Bank<int>(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, });
Bank<string> bank2 = new Bank<string>(new string[] { "Mary", "Jay" });
Console.WriteLine(bank1[0]);
}
}
1. 所有日期
日期 | 事宜 | Time |
---|---|---|
2024年05月06日 | 检测出双杆「前一天检测没杆杠和浅浅的两条杠」 | 2024-05-06 19:33:25 |
2024年05月07日 | 检测出双杆「老婆情绪平稳,表扬👍很好」 | 2024-05-07 22:02:41 |
2024年05月09日 | 媳妇8日晚上睡觉背部扭到,疼痛。原计划9日去医院产检,有可能要推迟一天。 | |
1. Preamble
In practicals you have implemented and learned about simulations, object-orientation and (soon) how to automate the running of multiple simulations. In this assignment, you will be making use of this knowledge to extend a given simulation to provide more functionality, complexity and allow automation. You will then report on your design and implementation, and the results generated by the simulation.
PRACTICE QUESTIONS:
void foo(int x) {
int* const p = &x; //line A
x = 28; //line B
cout << *p << ''; //line C
*p = 42; //line D
}
int main() {
int y = 17;
foo(y);
cout << y << endl;
}