متدهای virtual می توان inline باشند؟ - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

وبـــلاگ هــفت خــط کــد


آموزش های برنامه نویسی
۳۵۹ نفر آنلاین
۱۴۱ عضو و ۲۱۸ مهمان در سایت حاضرند

متدهای virtual می توان inline باشند؟

0 امتیاز
سلام خدمت دوستان عزیز.

آیا امکانش وجود داره که متدهای virtaul را inline تعریف کنیم اینگار متدهای virtual را نمیشه inline تعریف کرد و کامپایلر در زمان کامپایل خطا میده
سوال شده خرداد 30, 1399  بوسیله ی Alias (امتیاز 302)   3 23 31

1 پاسخ

0 امتیاز

سلام؛ بله می‌تونید تعریف کنید مشکلی نداره :

struct base
{
    virtual inline void function(void) const = 0;
};

class A : public base
{
public:
    A() = default;

private:
    inline void function() const override
    {
        std::clog << __PRETTY_FUNCTION__ << std::endl;
    }
};

int main()
{
    std::unique_ptr<base> object = std::make_unique<A>();

    object->function();
}

 

 

پاسخ داده شده خرداد 30, 1399 بوسیله ی mg_ramezani (امتیاز 727)   1 1 12
...