2011-01-22 42 views
3

我得到的错误error C2514: 'BLOCK' : CLASS HAS NO CONSTRUCTOR用一个简单的类是这样的:错误C2514: 'BLOCK':类没有构造函数

BLOCK.h

#pragma once 
#include "helpful.h" 

class WORLD; 

class BLOCK 
{ 
    public: 
     short int type; 

     void Render(); 

     BLOCK(); 
     ~BLOCK(void); 
}; 

BLOCK.cpp

#include "BLOCK.h" 
#include "WORLD.h" 

BLOCK::BLOCK(void) 
{ 
} 
void BLOCK::Render() 
{ 
} 
BLOCK::~BLOCK(void) 
{ 
} 

但是BLOCK类是定义的,不是吗?

+0

你的MYCLASS没有构造函数。这是BLOCK类,不是MYCLASS。 – 2011-01-22 18:18:42

+2

`BLOCK`或`WORLD`不是`MYCLASS`:你的帖子中有一段代码丢失,或者错误与此无关...... – 2011-01-22 18:19:39

回答

1

你需要看它在MYCLASS

+0

对不起,其实它不是MYCLASS,而是BLOCK – Entretoize 2011-01-22 23:03:40

0

根据MSDN,错误C2514时提出:

类,结构或联合数据没有 构造函数的参数列表 比赛正在使用的参数 实例化它。

我的猜测是,你没有将正确的参数传递给你的类的构造函数。引发错误的代码显然不属于您所显示的内容。

3

我发现我的错误:BLOCK的构造函数调用在另一个文件中,但不包含BLOCK的头文件,我只有class BLOCK;。改为改为#include BLOCK.h,问题解决了。

相关问题