Assign

Otomatik dönüştürmeyle matrisi, vektörü veya diziyi kopyalar.

bool matrix::Assign(
  const matrix<T>  &mat     // kopyalanacak matris
   );
bool matrix::Assign(
  const void       &array[] // kopyalanacak dizi
   );
bool vector::Assign(
  const vector<T>  &vec     // kopyalanacak vektör
   );
bool vector::Assign(
  const void       &array[] // kopyalanacak dizi
   );
 

Parametreler

m, v veya array

[in]  Kopyalanacak matris, vektör veya dizi.

Geri dönüş değeri

Başarılı olursa true, aksi takdirde false geri döndürür.

Not

Copy'den farklı olarak, Assign metodu dizilerin kopyalanmasına da olanak sağlar. Bu durumda, otomatik dönüştürme gerçekleşir, böylece ortaya çıkan matris veya vektör kopyalanan dizinin büyüklüğüne göre ayarlanır.

Örnek:

//--- matrisler kopyala
  matrix a= {{22}, {33}, {44}};
  matrix b=a+2;
  matrix c;
  Print("matrix a \n"a);
  Print("matrix b \n"b);
  c.Assign(b);
  Print("matrix c \n"a);
 
//--- matrise dizi kopyala
  matrix double_matrix=matrix::Full(2,10,3.14);
  Print("double_matrix before Assign() \n"double_matrix);
  int int_arr[5][5]= {{12}, {34}, {56}};
  Print("int_arr: ");
  ArrayPrint(int_arr);
  double_matrix.Assign(int_arr);
  Print("double_matrix after Assign(int_arr) \n"double_matrix);  
  /*
   matrix a
   [[2,2]
    [3,3]
    [4,4]]
   matrix b
   [[4,4]
    [5,5]
    [6,6]]
   matrix c
   [[2,2]
    [3,3]
    [4,4]]
 
   double_matrix before Assign() 
   [[3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14]
    [3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14,3.14]]
    
   int_arr
       [,0][,1][,2][,3][,4]
   [0,]   1   2   0   0   0
   [1,]   3   4   0   0   0
   [2,]   5   6   0   0   0
   [3,]   0   0   0   0   0
   [4,]   0   0   0   0   0
   
   double_matrix after Assign(int_arr
   [[1,2,0,0,0]
    [3,4,0,0,0]
    [5,6,0,0,0]
    [0,0,0,0,0]
    [0,0,0,0,0]]
 
  */

Ayrıca bakınız

Copy