C#简单的向量用法实例教程

作者:shichen2014 时间:2022-09-27 09:57:29 

本文以实例讲述了C#简单的向量用法,主要包括重载运算符>:以向量长度判断是否为真、重载运算符!=、<、<=等,具体实现代码如下:


using System;
class Vector
{
private double XVector;
private double YVector;
//构造函数
public Vector(double x, double y )
{
XVector = x;
YVector = y;
}
//获取向量的长度
public double GetLength( )
{
double Length = Math.Sqrt( XVector*XVector + YVector*YVector );
return Length;
}
//重载运算符==
public static bool operator == ( Vector a, Vector b )
{
return ( (a.XVector == b.XVector) && (a.YVector == b.YVector) );
}
//重载运算符!=
public static bool operator != ( Vector a, Vector b )
{
return !( a == b );
}
//重载运算符>:以向量长度判断是否为真
public static bool operator > ( Vector a, Vector b )
{
return a.GetLength( ) > b.GetLength( );
}
//重载运算符<
public static bool operator < ( Vector a, Vector b )
{
return a.GetLength( ) < b.GetLength( );
}
//重载运算符>=
public static bool operator >= ( Vector a, Vector b )
{
return ( a == b ) || ( a > b );
}
//重载运算符<=
public static bool operator <= ( Vector a, Vector b )
{
return ( a == b ) || ( a < b );
}
}
class Test
{
static public void Main( )
{
Vector vector1 = new Vector( 3, 4 );
Vector vector2 = new Vector( 0, 5 );
Vector vector3 = new Vector( 2, 2 );
Console.WriteLine("向量1为( 3, 4 ) \t 向量2为( 0, 5 ) \t 向量3为( 2, 2 )");
Console.WriteLine("向量1 == 向量2 为:{0}", vector1 == vector2 );
Console.WriteLine("向量1 != 向量2 为:{0}", vector1 != vector2 );
Console.WriteLine("向量1 > 向量3 为:{0}", vector1 > vector3 );
Console.WriteLine("向量2 < 向量3 为:{0}", vector2 < vector3 );
Console.WriteLine("向量1 >= 向量2 为:{0}", vector1 != vector2 );
Console.WriteLine("向量1 <= 向量2 为:{0}", vector1 != vector2 );
}
}
标签:C#,向量,用法
0
投稿

猜你喜欢

  • 详解Xamarin.Android 利用Fragment实现底部菜单

    2021-07-06 23:41:18
  • Java实现蓝桥杯G将军的示例代码

    2022-05-01 08:44:58
  • Spring Boot Admin 进行项目监控管理的方法

    2021-09-01 23:39:19
  • Java 多线程同步 锁机制与synchronized深入解析

    2023-12-20 17:55:50
  • 解决IDEA中 Ctrl+ALT+V这个快捷键无法使用的情况

    2022-02-27 07:51:36
  • Android 数据库打包随APK发布的实例代码

    2022-05-12 11:31:15
  • Android MotionEvent中getX()和getRawX()的区别实例详解

    2023-01-24 22:06:42
  • Spring Boot中@Conditional注解介绍

    2022-03-03 15:23:37
  • C#3.0中Lambda表达式详解

    2023-08-08 04:01:37
  • C#开发Android百度地图手机应用程序(多地图展示)

    2022-01-06 00:47:51
  • Spring的异常重试框架Spring Retry简单配置操作

    2023-11-25 18:27:35
  • android studio3.4安装指南图文教程

    2021-08-26 12:27:08
  • Android Style.xml的应用详解及代码实现

    2022-02-25 00:36:28
  • spring使用OXM进行对象XML映射解析

    2022-11-11 16:05:19
  • windows下C#定时管理器框架Task.MainForm详解

    2021-06-06 13:59:06
  • C++与namespace有关的两个编译错误的讲解

    2021-12-09 11:37:35
  • Android仿IOS ViewPager滑动进度条

    2022-10-31 08:27:38
  • Flutter 底部弹窗如何实现多项选择

    2023-06-24 17:08:17
  • SpringBoot 整合 Shiro 密码登录与邮件验证码登录功能(多 Realm 认证)

    2023-06-23 02:45:28
  • 详解Java面向对象中的继承

    2023-10-06 13:26:14
  • asp之家 软件编程 m.aspxhome.com