Azril Bagus Ответов: 2

Что я сделал не так?


Ошибка: ожидаемое первичное выражение перед токеном '+'

Что я уже пробовал:

#include <iostream>
#include <string>
using namespace std;

class Book{
public:
    string namabuku;

    Book(string pnamabuku) :
        namabuku (pnamabuku){
        }
};

class Member{
public:
    string namamember;

    Member(string pnamamember) :
        namamember(pnamamember){
        }
};

class Petugas{
public:
    string namapetugas;

    Petugas(string pnamapetugas) :
        namapetugas(pnamapetugas){
        }
};

class perpus: private Book, public Member, public Petugas{
public:
    string perpustakaan;

    perpus(string pnamabuku, string pnamamember, string pnamapetugas) :
        Book(pnamabuku),
        Member(pnamamember),
        Petugas(pnamapetugas){
        }

        string Peminjaman(){
        return "Nama Buku " + Book + "dipinjam oleh" + Member + " nama Petugas " + Petugas + "\n\n";
        }
};

int main(){
    perpus Azril("Belajar Menggunakan Phyton","Azril Bagus", "Andin");
    cout<<Azril.meminjam();

    return 0;
}

2 Ответов

Рейтинг:
14

CPallini

Изменение от

Цитата:
строки Peminjaman(){
возвращение "Нама Буку" + книга + "dipinjam Олег" + член + "Нама Petugas" + Petugas + "\н\н";
}

к
        string Peminjaman(){
        return string("Nama Buku ") + namabuku + string("dipinjam oleh") + namamember + string(" nama Petugas ") + namapetugas + string("\n\n");
        }
};

и откуда
Цитата:
cout<<azril.meminjam();
к
cout<<Azril.Peminjaman();


Рейтинг:
1

Richard MacCutchan

return "Nama Buku " + Book + "dipinjam oleh" + Member + " nama Petugas " + Petugas + "\n\n";

Вы не можете объединить строки и переменные таким образом. Вам нужно использовать что-то вроде <sstream> | Microsoft Docs[^] класс.