【C++】用new创建对象的两种形式有什么区别

在写MFC的时候从网上下载了一个日志框的类:
图片说明

观察到其定义对象的时候用以下形式:

m_logdlg = new CLogWnd;

该日志框的构造函数如下:

class CLogEdit : public CRichEditCtrl
{
public:
    //! Constructor
    CLogEdit(){};

我用另外一种形式定义该对象:

CLogWnd* m_logdlg = new CLogWnd;

则运行过程中会出现如下错误:

图片说明

想问问这两种形式定义一个对象有什么区别,以及为什么会出现这种错误,谢谢!

https://blog.csdn.net/m0_37686205/article/details/89194248