的構造函數中我正在編程一個C++中的多態程序,它需要使用派生/繼承類。我的基類叫做ClassA
,我的派生類叫做ClassB
。我有一個名爲varClass
的單獨的類,它是我的基類的構造函數中的參數的數據類型,ClassA
。我在ClassA.cpp
獲得下面的構造此錯誤消息:C++:「Field'object_var'必須初始化」在基類
字段「object_var」必須初始化
#include "ClassA.h"
#include "varClass.h"
ClassA::ClassA(const classVar &O, const int &p) {}
爲什麼必須從一個單獨的具體類的對象,讓他們之前被初始化使用一個函數的參數在不同的類中?我曾嘗試在ClassA
的classVar
課中提前申報,但沒有運氣。我怎樣才能解決這個問題,以允許從一個單獨的類的數據類型的參數?如果我給它一個初始化,我怎樣才能確保傳遞給這個構造函數的每個值都是唯一的,而不是被初始化值重寫呢?
下面是其餘的相關代碼。我不打算展示Derived類,因爲我不相信它們是問題的一部分,但由於我是新手程序員,所以決定提及它們,這可能是問題所在。
// ClassA.h
#ifndef CLASSA_H
#define CLASSA_H
#include "varClass.h"
class ClassA {
protected:
const classVar &object_var; // The problem lies here
unsigned var1;
// ... more code follows
public:
ClassA(const object &O, const int &p);
// ... more code follows
};
#endif
頁眉和實施objectVar
類無關的問題。該課程是一個標準的具體課程。
謝謝!很有幫助。 – jshapy8