Моего синглтона какошибка именующие при использовании одноточечно содержат массив указателя
class ValueLstNode {
private:
ZwNode* m_pZwNode[32];
public:
ValueLstNode();
ValueLstNode(const ValueLstNode& rhs);
static ValueLstNode& GetInstance();
virtual ~ValueLstNode();
ValueLstNode& operator= (const ValueLstNode& rhs);
ZwNode_p GetNode (int Posion) const;
ZwNode_p operator[] (int Posion);
const ZwNode_p operator[] (int byPosion) const;
};
И файл .cpp
ValueLstNode::ValueLstNode() {
for (u32_t i = 0; i < 32; i++) {
m_pZwNode[i] = NULL;
}
}
ValueLstNode::ValueLstNode(
const ValueLstNode& rhs
) {
for (u32_t i = 0; i < 32; i++) {
m_pZwNode[i] = rhs.m_pZwNode[i];
}
}
ValueLstNode&
ValueLstNode::operator= (
const ValueLstNode& rhs
) {
for (int i = 0; i < ZW_MAX_NODES; i++) {
m_pZwNode[i] = rhs.m_pZwNode[i];
}
return *this;
}
ValueLstNode::~ValueLstNode() {
for (int i = 0; i < ZW_MAX_NODES; i++) {
if (m_pZwNode[i] != NULL) {
delete m_pZwNode[i];
m_pZwNode[i] = NULL;
}
}
}
ValueLstNode&
ValueLstNode::GetInstance() {
static ValueLstNode m_instance;
return m_instance;
}
ZwNode*
ValueLstNode::operator[] (
int Posion
) {
return m_pZwNode[Posion];
}
const ZwNode*
ValueLstNode::operator[] (
int Posion
) const {
return m_pZwNode[Posion];
}
Но
ValueLstNode m_ValueLstNode = ValueLstNode::GetInstance();
m_ValueLstNode[0] = NULL;
Я получаю сообщение об ошибке: требуется именующая ... Как это решить. Помоги мне. Thank & rg.
спасибо. он работает –
Контрактор и копии являются общедоступными, ошибка уведомления затмений. Я не могу заниматься частным дизайнером и копиями. –