ManagedArray.cpp
上传用户:sz0451
上传日期:2022-07-29
资源大小:256k
文件大小:2k
源码类别:

.net编程

开发平台:

Visual C++

  1. // This is the main project file for VC++ application project 
  2. // generated using an Application Wizard.
  3. #include "stdafx.h"
  4. #using <mscorlib.dll>
  5. using namespace System;
  6. // This is the entry point for this application
  7. #ifdef _UNICODE
  8. int wmain(void)
  9. #else
  10. int main(void)
  11. #endif
  12. {
  13.     // Declare loop counters
  14.     int i,j,k;
  15.     // Create a multidimensional array of Int32
  16.     Int32 pn[,] = new Int32[3,2];
  17.     Console::WriteLine("Rank is {0}", __box(pn->Rank));
  18.     Console::WriteLine("Length is {0}", __box(pn->get_Length()));
  19.     // Print out the array dimension information
  20.     for (i=0; i<pn->get_Rank(); i++)
  21.         Console::WriteLine("Dimension {0} is of size {1}", __box(i), 
  22.                 __box(pn->GetLength(i)));
  23.     // Fill the array with values
  24.     for (j=0; j<pn->GetLength(0); j++)
  25.         for (k=0; k<pn->GetLength(1); k++)
  26.             pn[j,k] = (j+1)*(k+1);
  27.     // Put '10' in array element [1,1]
  28.     pn->SetValue(__box(10), 1, 1);
  29.     // Print out the array data
  30.     for (j=pn->GetLowerBound(0); j <= pn->GetUpperBound(0); j++)
  31.         for (k=pn->GetLowerBound(1); k <= pn->GetUpperBound(1); k++)
  32.             Console::WriteLine("pn[{0},{1}] = {2}", __box(j), 
  33.                         __box(k), pn->GetValue(j, k));
  34.     // Create another multidimensional array of Int32
  35.     Int32 pn2[,] = new Int32[3,2];
  36.     // Fill the array with a constant value
  37.     for (j=0; j<pn2->GetLength(0); j++)
  38.         for (k=0; k<pn2->GetLength(1); k++)
  39.             pn2[j,k] = 47;
  40.     // Copy two values from pn to pn2
  41.     System::Array::Copy(pn, 0, pn2, 2, 2);
  42.     // Print out the array data
  43.     Console::WriteLine();
  44.     for (j=pn2->GetLowerBound(0); j <= pn2->GetUpperBound(0); j++)
  45.         for (k=pn2->GetLowerBound(1); k <= pn2->GetUpperBound(1); k++)
  46.             Console::WriteLine("pn2[{0},{1}] = {2}", __box(j), 
  47.                         __box(k), pn2->GetValue(j, k));
  48.     return 0;
  49. }