求教各位大神,C#中怎么设置多个公共变量,使得这些公共变量可以被多个窗口中的代码重复调用、赋值、计算

各位大神好,C #新手,我的职业是一名土建结构工程师,因为工作中需要用到很多结构计算、出计算书、自动出CAD图之类的工作,所以之前自学了VB,自己编写了一个结构计算的小程序。因为VB实在太老了,而且CAD二次开发的话,C#的功能相对更强大,所以开始自学C#。但是遇到了以下几个问题:
1.原来的VB程序计算过程需要用到大大小小几百个变量,而且是整个程序都需要用到的,比如工况一条件下,构件一的受力:Nx,Ny,Nz,Vx,Vy,Vz,Mx,My,Mz等等,VB中有公共变量的概念,很容易解决这个问题。但是这些公共变量怎么在C#中设置?这个问题当然可以通过添加一个静态公共类比如Common用于存储和改变公共变量,但这样有让我遇到了第二个问题。
2.设置静态公共类存储变量后,原来VB中一个很简单的赋值语句c=a^2+b^2就要写成Common.c=(Common.a)^2+(Common)^2!(实际上这里的^甚至在C#中都不能够用作幂运算!)这还是我其中一个比较简单的公式,后面还有更复杂的!我尝试了使用using static namespace.classname 来简化公式以便可以写成c=a^2+b^2的形式,但发现不可以在program.cs里写,必须在每个form里都写上这个using语句。
3.最后一个问题Common.c=(Common.a)^2+(Common)^2这个公式,我还没有考虑到c#中^并不代表幂运算,真正想要幂运算需要math函数,也就是说一个简单的c=a^2+b^2,最后要写成Common.c=Math.Pow(Common.a,2)+Math.Pow(Common.b,2)!天哪!这对于一个业余编程初学者来说简直是一个打击!难道我需要再自己自定义运算符?或者做运算符重载!我真的只是一个新手o(╥﹏╥)o。
我的整个小程序主要就是数据计算,涉及到很多公式和赋值,这在C#中没有很好的解决方案吗?我再CSDN上也发了帖子求教,但是感觉没有得到良好的答案,真心求教各位大神!因为是新手,谢谢大家!

月关宝盒
浏览 1182回答 1
1回答

哈士奇WWW

题主你好,我是搞路桥的,业余也学过vb,c#,c++,就我的感觉,c#要比vb6在编码上方便了很多,你说的几百个全局变量在实际编码时太容易出错了,如果方便,可以发一份源码,说不定会有值的你参考的方法追问谢谢回答,那请问您是如何实现这种计算场景的计算呢,因为在整个计算中用的到变量就是很多,而在VB6中,直接public a,b,c,d,e....就可以,不会出错 源码的话,一是程序源码很大,不太可能放出来。二是源码属于公司机密,所以如果您有实现方法,请指导一二追答不需要算法也是保密的?你可以摘取一部分算法或描述一下类似算法,具体问题具体分析,建议你学习一下c#面向对象
打开App,查看更多内容
随时随地看视频慕课网APP