Problem when using mapwingis in MFC dialog

Hello everyone, I’m new here and I’m having a problem when try to convert the example program tracking.cs to MFC in VS2022.
In C# I can use the following code to define a Shape called m_path(just like the example showed in web documentation);

 public partial class MapExamples
    {
        private double m_distance = 0.0;  // the distance passed
        private double m_step = 10.0;   // the distance to pass on a single timer event
        private Shape m_path = null;      // the shape which holds the path of vehicle
        private int m_count = 0;          // number of steps performed
        public Timer m_timer = new Timer();
...

In MFC,I use the following code in head files to define m_path.

#pragma once
#include "CMAP1.h"

class CMFCmapwingisDlg : public CDialogEx
{

public:
	CMFCmapwingisDlg(CWnd* pParent = nullptr);	


#ifdef AFX_DESIGN_TIME
	enum { IDD = IDD_MFCMAPWINGIS_DIALOG };
#endif

	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	



protected:
	HICON m_hIcon;


	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	DECLARE_MESSAGE_MAP()
public:
	CMAP1 map1;
	CString m_strFilePath;
	Shape m_path;
	double m_distance = 0;
	double m_step = 10.0;
	int m_count = 0;

But an error E0070 occured,which shows that m_path is an incomplete type and can not be used.
Maybe there’s something wrong with the way I’m calling shape, but I’m not familiar enough to use Mapwingis in MFC. Can anyone help solve this problem? Thanks in advance.

The problem has been resolved,shape classes cannot be used directly in mfc,IShapePtr is used in place of it.