以前にこの質問を投稿しました: Compiler Can't Find My Header?
locker.h をインクルードして問題を修正しましたが、別のヘッダーである SelfStorageList.h に問題があるようです。私はすべてのファイルが同じフォルダー (Visual Studio 2012 の Projects -> myfile フォルダー内) にあり、それらのパスを確認しました。
私の問題を与えるコードは次のとおりです。
#include "Locker.h"
#include "SelfStorageList.h"
void rentLocker(Locker e) {
if (isEmpty()) { //Issue here
}
}
isEmpty() 呼び出しは定義されていないと言われています。これは、SelfStorageList.h で次のように定義されています。
#pragma once
#include <string>
#include <cstdlib>
#include "Locker.h"
using namespace std;
class LockerNode{
public:
Locker objLocker;
LockerNode *next;
LockerNode(){
next=0;
};
LockerNode(Locker e, LockerNode *ptr=0){
objLocker=e;
next=ptr;
}
};
class SelfStorageList
{
private:
LockerNode *head, *tail;
public:
SelfStorageList(){
head=tail=0;
}
LockerNode* getHead(){
return head;
}
LockerNode* getTail(){
return tail;
}
void rentLocker(Locker e);
void dispLockers(bool vipOnly=0);
bool isEmpty(){
return head==0;
}
};
トライアル テストでは、ヘッド ポインタとテール ポインタも認識していないことが示されているように見えるため、残りの関数を含めました。ヘッダーを含めるのがなぜそんなに難しいのか、誰にも分かりますか? それらは間違いなくすべて同じ正しいフォルダーにあることを繰り返します。
役立つ場合は、さらにスクリーンショットを次に示します。