cuốn sách gpt4 ai đã làm

C++, kế thừa, ảo

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 16:15:58 28 4
mua khóa gpt4 Nike

Tôi đang gặp một số vấn đề ở đây. Tôi đang cố gắng làm cho mã của mình hoạt động giống như một giao diện trong java. Lớp này được kế thừa bởi 2 lớp khác vì chúng gây ra một số vấn đề. Và tôi cũng muốn biết liệu tôi có làm đúng hay không và cách cải thiện mã của mình. Tôi chưa quen với điều này. Nhìn:

Lớp giao diện:

#include 
#include
lớp IZarzadzaniePozycjami{

public:
IZarzadzaniePozycjami(void);
~IZarzadzaniePozycjami(void);

public:
khoảng trống ảo ZnajdzPozycjePoTytule();
khoảng trống ảo ZnajdzPozycjePoId();
khoảng trống ảo WypiszWszystkiePozycje();


};

#include "Pozycja.h"
#include "IZarzadzaniePozycjami.h"
#include
#include

Lớp thư mục được kế thừa từ lớp IZarzadzanie....

#include "Pozycja.h"
#include "IZarzadzaniePozycjami.h"
#include
#include

lớp Katalog : public IZarzadzaniePozycjami
{
private:
std::string dzialTematyczny;
public:
void ZnajdzPozycjePoTytule(std::string tytul);
void ZnajdzPozycjePoId(int id);
void WypiszWszystkiePozycje();
Katalog(void);
Katalog(std::string dzialTematyczny_);
void DodajPozycje(Pozycja);
std::list danh sách;
friend bool operator==(const Katalog & kat, const std::string & s);
~Katalog(khoảng trống);
};
toán tử bool nội tuyến==(std::string& s, Katalog& katalog)
{
trả về katalog == s;
}

Sau đó là lớp thư viện (biblioteka.h) kế thừa từ giao diện

#include
#include "IZarzadzaniePozycjami.h"
#include "Bibliotekarz.h"
#include "Pozycja.h"
#include "Katalog.h"

lớp Thư viện:
công khai IZarzadzaniePozycjami
{
public:
Biblioteka(void);
~Biblioteka(void);
Biblioteka(std::string adres_);
void DodajBibliotekarza(Bibliotekarz);
void WypiszBibliotekarzy();
void DodajKatalog(Katalog);
void DodajPozycje(Pozycja p, std::string dzialTematyczny);

void ZnajdzPozycjePoTytule(std::string tytul);
void ZnajdzPozycjePoId(int id);
void WypiszWszystkiePozycje();
riêng tư: std::string địa chỉ;



};

Có một số lỗi ở đây. Xin lỗi vì bài viết dài. Không biết nên cắt bỏ cái gì.

c:\users\komputer\documents\visual studio 2012\projects\project1\izarzadzaniepozycjami.h(3): lỗi C2011: 'IZarzadzaniePozycjami': xác định lại loại 'class'
1> c:\users\komputer\documents\visual studio 2012\projects\project1\izarzadzaniepozycjami.h(3): xem tuyên bố của 'IZarzadzaniePozycjami'
1>c:\users\komputer\documents\visual studio 2012\projects\project1\katalog.h(7): lỗi C2504: 'IZarzadzaniePozycjami': lớp cơ sở không xác định
1>c:\users\komputer\documents\visual studio 2012\projects\project1\biblioteka.h(9): lỗi C2504: 'IZarzadzaniePozycjami': lớp cơ sở không xác định
1> Tạo mã...
1>c:\users\komputer\documents\visual studio 2012\projects\project1\katalog.cpp(16): cảnh báo C4717: 'operator==' : đệ quy trên tất cả các đường dẫn điều khiển, hàm sẽ gây tràn ngăn xếp thời gian chạy

câu trả lời hay nhất

Được sử dụng trong tất cả các tệp tiêu đề#pragma một lần:

#pragma một lần

#include
#include
lớp IZarzadzaniePozycjami{

public:
IZarzadzaniePozycjami(void);
~IZarzadzaniePozycjami(void);
....

và đảm bảo sử dụng IZarzadzaniePozycjami Chứa trước IZarzadzaniePozycjami tiêu đề.

Về C++, tính kế thừa và ảo hóa, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/22598169/

28 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress