
你所说的另一个类中调用时所用的那个form.LightArrow中的form是从哪来的,如果是重新声明的一个窗体,类似于xxx form=new xxx()这种,那当然是不行的,解决的方法其实与变量传递一样,比如仍然用静态变量
//我不清楚这你个定义结构和方法的窗体叫什么,比如是Form1public static Form1 current=null
//然后在这个类的构造函数中
public Form1()
{
InitializeComponent()
current = this//赋值
}
public void LightArrow(int i)
{
ArrowPositonInformation[i].FlagShow = 255
}
然后在其它类或者其它地方,就可以直接用
Form1.current.LightArrow(3)
问题在你这个函数的定义参数void find(float a[],float *pmax,float *pmin)
你在函数内对后2个参数直接进行了赋值。
{pmax=&a[t]}if(a[t]<*pmin)
{pmin=&a[t]}
你在函数内赋值并不会被外部的参数造成影响,你需要把用指针的引用才行
float*&pMax, float*&pmin
这样在函数内的赋值才有效果
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)