C++素人です。他の人が作成したC++のプログラムを急ぎでコンパイルをする必要があるのですが、原因がわからず困っています。分かる方宜しくお願いします。
以下に記載している内容がヘッダに定義されていて、コンパイルすると
'xxxxx(変数名)'はこのスコープで宣言されていません とメッセージが出ます。
エラーが出ている XIUDLQueue のクラス宣言からさかのぼると
XIUDLQueue は XIUDLList を継承していて、
XIUDLList は XILListHeader を継承しているので、
XILListHeaderクラスで potected 宣言しているmn_count、m_first、m_last変数は
XIUDLQueueのメンバ関数で使用できそうな気がしますが違うのでしょうか?
template <class T, class TT>
class XILListHeader { // LINKED LIST HEADER
protected :
INT mn_count; // 宣言されていませんとエラーが出ている変数
T * m_first; // 宣言されていませんとエラーが出ている変数
T * m_last; // 宣言されていませんとエラーが出ている変数
public :
XILListHeader<T,TT> () { Init(); }
virtual ~XILListHeader<T,TT> ();
VOID Init ();
VOID InitHeader () { Init(); }
INT Count () { return mn_count; }
VOID Count (INT *count) { *count = mn_count; }
T * First () { return m_first; }
VOID First (T **cell) { *cell = m_first; }
T * Last () { return m_last; }
VOID Last (T **cell) { *cell = m_last; }
virtual VOID Push (TT value) {;}
virtual VOID Push (T *cell) {;}
virtual VOID Push (XILListHeader<T,TT> *hdr) {;}
virtual VOID Push (T &cell) {;}
virtual VOID Push (XILListHeader<T,TT> &hdr) {;}
};
/* /////////////////////////////////////////////////////// */
template <class T>
class XIUDLCell {
protected :
T m_value;
XIUDLCell<T> * m_next;
public :
XIUDLCell<T> () { m_next = NULL; }
XIUDLCell<T> (T value);
~XIUDLCell<T> () {;};
T Value () { return m_value; }
VOID Value (T *value) { *value = m_value; }
XIUDLCell<T> * Next () { return m_next; }
VOID Next (XIUDLCell<T> **cell) { *cell = m_next; }
VOID PutValue (T value) { m_value = value; }
VOID PutNext (XIUDLCell<T> *cell) { m_next = cell; }
VOID PutNext (XIUDLCell<T> &cell) { m_next = &cell; }
};
/* /////////////////////////////////////////////////////// */
template <class T>
class XIUDLList : public XILListHeader<XIUDLCell<T>,T> { // UNI-DIRECTIONALLY LINKED LIST
public :
XIUDLList<T> () : XILListHeader<XIUDLCell<T>,T> () {;}
~XIUDLList<T> () {;}
XIUDLCell<T> * PopCell ();
};
/* /////////////////////////////////////////////////////// */
template <class T>
class XIUDLQueue :
public XIUDLList<T> {
public :
XIUDLQueue<T> () : XIUDLList<T> () {;}
~XIUDLQueue<T> () {;}
VOID Push (T value);
VOID Push (XIUDLCell<T> *cell);
VOID Push (XILListHeader<XIUDLCell<T>,T> *hdr);
VOID Push (XIUDLCell<T> &cell) { Push(&cell); }
VOID Push (XILListHeader<XIUDLCell<T>,T> &hdr) { Push(&hdr); }
};
/* /////////////////////////////////////////////////////// */
template <class T>
VOID
XIUDLQueue<T>::Push (
XILListHeader<XIUDLCell<T>,T> * hdr
){
XIUDLCell<T> * cellFirst;
INT count;
if ( !hdr ) {
return;
}
count = hdr->Count();
if ( count < 1 ) {
return;
}
cellFirst = hdr->First();
if ( mn_count > 0 ) { // 'mn_count'はこのスコープで宣言されていません
m_last->PutNext(cellFirst); // 'm_last'はこのスコープで宣言されていません
}
else {
m_first = cellFirst; // 'm_first'はこのスコープで宣言されていません
}
m_last = hdr->Last(); // 'm_last'はこのスコープで宣言されていません
mn_count += count; // 'mn_count'はこのスコープで宣言されていません
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Java java final 1 2022/06/10 22:49
- C言語・C++・C# C言語 3 2022/11/09 13:27
- Visual Basic(VBA) エクセル マクロ(A1:A10)までの中で一番多く出た数字をB10に表示 6 2023/04/25 17:01
- C言語・C++・C# Cのオブジェクトファイルの逆アセンブル 5 2023/05/13 01:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SH-02 着うたを作成したい
-
ガラケーからPCへの写真の取り込み
-
e-taxで送信ファイルの拡張子が...
-
A4の紙に印刷されている文字を...
-
個別に違う添付ファイルを付け...
-
Access2016のExcelインポートの...
-
PC内で速度を遅くした音源をCD...
-
クリッカブルマップ(イメージ...
-
stdio.hの中身
-
エアコンの冷媒 R410Aの重...
-
GIMP separate+プラグイン クラ...
-
iPhoneの内蔵の記憶媒体は、HDD...
-
2枚、マイクロSDカードを入...
-
CSVを取り込んで、画像を表示す...
-
スマホでtxtファイルを編集する...
-
情けない話ですが成田エクスプ...
-
suzukaが起動しません
-
ASPのエディター
-
おもしろフラッシュのサイト名...
-
microsdカード保存物をPCで見る...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
個別に違う添付ファイルを付け...
-
e-taxで送信ファイルの拡張子が...
-
エクセルで「特定の文字を含む...
-
スマホでtxtファイルを編集する...
-
複数のブックを新しいブックのS...
-
A4の紙に印刷されている文字を...
-
iPhoneの内蔵の記憶媒体は、HDD...
-
ビデオファイルのプロパティの...
-
エアコンの冷媒 R410Aの重...
-
ガラケーからPCへの写真の取り込み
-
拡張子「.IDJ」を、windo...
-
Fortniteのクラッシュについて
-
2枚、マイクロSDカードを入...
-
VBA:カウンターの i の値が開放...
-
ファイル数と合計サイズの取得方法
-
stdio.hの中身
-
TextBoxにフォーカスを与えると...
-
PC内で速度を遅くした音源をCD...
-
リストビューの選択状態を取得...
-
GIMP separate+プラグイン クラ...
おすすめ情報