У меня есть два с ++ класса ниже. Я хочу получить свойство LHContactInfo из LHSceneSubclass, но ничего не могу получить. Так как я могу это сделать?
#ifndef __LEVELHELPER_API_CONTACT_INFO_H__
#define __LEVELHELPER_API_CONTACT_INFO_H__
#include "LHConfig.h"#if LH_USE_BOX2D
#include "cocos2d.h"
class b2Contact;
using namespace cocos2d;
class LHContactInfo
{
public:
LHContactInfo();
virtual ~LHContactInfo();
Node* nodeA;
Node* nodeB;
std::string nodeAShapeName;
std::string nodeBShapeName;
int nodeAShapeID;
int nodeBShapeID;
Point contactPoint;
float impulse;
b2Contact* box2dContact;
};
#endif
#endif //__LEVELHELPER_API_CONTACT_INFO_H__#include "LHContactInfo.h"
#if LH_USE_BOX2D
#include "Box2d/Box2d.h"
LHContactInfo::LHContactInfo(){
nodeA = NULL;
nodeB = NULL;
box2dContact = NULL;
}
LHContactInfo::~LHContactInfo(){
nodeA = NULL;
nodeB = NULL;
box2dContact = NULL;
}
#endif
Класс LHContactInfo
объявляется только (т. е. знать по имени) из-за вашей предварительной декларации. Однако компилятору нужно определение класса. Вам необходимо включить файл, содержащий определение класса.