简要用一个模型说明问题:class student//声明一种结构体
{
public int student_id;
public string student_name;
}
public LinkedList<student> student_list=new LinkedList<student>();//新建空链表
/******其他代码*****/
private void function1()//给链表添加元素
{
student s1=new student();//C#不能用指针,所以我也很无奈的这样做。
s1.name=textbox1.text;
student_list.AddLast(s1);
/******其他代码*****/
}结果可想而知:当function1运行结束后,局部变量s1被撤除,链表还是为空。
之前写C++只需要让s1声明成为一个指针就行了,现在C#里不能用指针,请教各位我该怎么写?
{
public int student_id;
public string student_name;
}
public LinkedList<student> student_list=new LinkedList<student>();//新建空链表
/******其他代码*****/
private void function1()//给链表添加元素
{
student s1=new student();//C#不能用指针,所以我也很无奈的这样做。
s1.name=textbox1.text;
student_list.AddLast(s1);
/******其他代码*****/
}结果可想而知:当function1运行结束后,局部变量s1被撤除,链表还是为空。
之前写C++只需要让s1声明成为一个指针就行了,现在C#里不能用指针,请教各位我该怎么写?
不会啊。这不是C++,s1不会被“撤除”,放心好了。