C#和C++混合编程
来源:优易学  2010-1-14 10:58:19   【优易学:中国教育考试门户网】   资料下载   IT书店

 

  extern "C" AFX_API_EXPORT int GetArrayElementNumber()

  {

  return StaticElementNumber;

  }

  C#代码:

  [DllImport("MFCDll.dll")]

  public static extern bool GetArray(int ElementNumber, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 0)] double[] BaseAddress);

  private void MenuItemFileGetArrayOnClicked(object sender, RoutedEventArgs e)

  {

  //Get array data.

  int ElementNumber = GetArrayElementNumber();

  double[] doubleArray = new double[ElementNumber];

  GetArray(ElementNumber, doubleArray);

  //Show the data.

  mainGrid.Children.Clear();

  ListBox listBox = new ListBox();

  foreach (double number in doubleArray)

  {

  listBox.Items.Add(number);

  }

  mainGrid.Children.Add(listBox);

  }

  有了这三个功能,一般来说C++代码复用到C#平台上就是比较简单的事情了。

上一页  [1] [2] [3] 

责任编辑:cyth

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训