【问题标题】:Assignment operator gives 'no suitable user-defined conversion' error赋值运算符给出“没有合适的用户定义转换”错误
【发布时间】:2020-01-13 20:09:42
【问题描述】:

我有一个CDateTime 类,方法如下:

CDateTime& operator=(const COleDateTime& datetime)
{
    SetDateTime(&datetime);
    return *this;
}

但它似乎不起作用。

谁能告诉我我错过了什么?

【问题讨论】:

    标签: c++ operator-overloading assignment-operator


    【解决方案1】:

    您正在初始化,而不是分配 dtStartdtEnd 变量。为了使初始化工作,你需要这个构造函数:CDateTime(const COleDateTime& datetime)

    或者,如果CDateTime有默认构造函数,你可以将初始化拆分为声明和赋值:

    CDateTime dtStart; dtStart = dlg.m_dtStartDate;
    

    【讨论】:

    • 天啊!是的,我正在初始化。谢谢。
    猜你喜欢
    • 2016-11-02
    • 1970-01-01
    • 2022-01-24
    • 2020-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-05
    • 2011-11-16
    相关资源
    最近更新 更多