Здесь нужны две операции: «присвоить» (возможно, автоматически сгенерированная) и конструктор копирования.
class MP3_Format {
MP3_Format(const char* c_string);
MP3_Format& operator=(const MP3_Format&); // велика вероятность, что компилятор её сгенерирует автоматически
};
Если пишете на C++11 — вместо операции «присвоить» нужна операция «присвоить из временного объекта». Опять-таки, годится автоматически сгенерированная.
Семантика языка C++ в этой строчке такова. Мы создаём временный объект
MP3_Format("Summertime")
, а затем переносим его в наш mp3a. Скорее всего, оптимизатор уберёт этот перенос и инициализирует mp3a на месте, но такова уж семантика…