пецификатор @const исчезает из чисто виртуальной функции [duplicate]

На этот вопрос уже есть ответ:

Const верхнего уровня не влияет на сигнатуру функции 7 ответов

Использование gcc версии 4.8.2:

Я сталкиваюсь с проблемой, когда квалификатор const в моих параметрах исчезает при компиляции кода. Вот пример:

Main.cc:

#include <iostream>

class Base
{
        public:
        virtual int getSum( const int number ) = 0;
};

class Derived : public Base
{
        public:
        Derived( const int& num )
        : _myNumber( num )
        {}

        virtual int getSum( const int number )
        {
                return _myNumber + number;
        }

        private:
        int _myNumber;
};

int main( int argc, const char* argv[] )
{
        Base *b = new Derived( 2 );

        std::cout << b->getSum( 3 ) << "\n";

}

Скомпилировано так:

g++ main.cc -o const_test

Когда я бегу по нм:

nm const_test | c++filt | grep getSum

Я получаю следующий вывод:

0000000000400b60 W Derived::getSum(int)

Почему const исчезает из моей функции при компиляции?

Ответы на вопрос(1)

Ваш ответ на вопрос