CLKing31 --------- MFCはCArrayを使用して2次元配列を実装します

CArrayは2次元配列を実装します

 

MFCでは、CArray操作の便利さを利用するだけでなく、2次元配列の機能を実現する方法は?これを実現する方法は次のとおりです。

 

struct MapTile
{  CString fileName;  int tileX;  int tileY;  HBITMAPビットマップ; };





 

 
 
struct MapTileArray
{  CArray <MapTile、MapTile&> mapTileX;  const MapTileArray&operator =(const MapTileArray&rhs)  {   if(this!=&rhs)   {    mapTileX.RemoveAll();    mapTileX.Append(rhs.mapTileX);    mapTileX.FreeExtra();   }   return * this;  } };

 








 



 
 
 
  

 

2次元配列を実装するには、MapTileArrayの=演算子メソッドを実装する必要があります。

そうしないと、次のエラーが発生します。

 

エラーC2248: 'CObject :: operator =':クラス 'CObject'で宣言されたプライベートメンバーにアクセスできません

 

使用する場合のコードは次のとおりです。

 

typedef CArray <MapTileArray、MapTileArray&> CMapTileYArray;
static CMapTileYArray mapTilesYArray;
 

関連リソース:VCは2次元配列を画像として表示します
————————————————
著作権表示:この記事は、CC4.0に続くCSDNブロガー「guowseu」の元の記事です。 BY-SA著作権表示、転載のために元のソースとこのステートメントへのリンクを添付してください。
元のリンク:https://blog.csdn.net/guowseu/article/details/83526844

おすすめ

転載: blog.csdn.net/qq_43662480/article/details/114559329