c ++,Visual studio表达了运行前错误的奇怪之处

时间:2014-02-09 02:00:28

标签: c++ visual-studio-2010

我在.cpp文件中使用这一小段代码获得运行前错误。

突出显示

iFileName并说“错误:此声明没有存储类或实例类型。”

iFileNameiWidth之间的逗号是“错误:预期声明”

右括号表示“错误:预期声明”

#include <iostream>
#include <fstream>

#include "BMPCanvas.h"
#include "Fractal.h"

using namespace std;

BMPCanvas(string iFileName, int iWidth, int iHeight){
    filename = iFileName;
    width = iWidth;
    height = iHeight;
} 

有谁知道为什么我会遇到错误?

3 个答案:

答案 0 :(得分:2)

您需要像这样定义构造函数:

BMPCanvas::BMPCanvas (string iFileName, int iWidth, int iHeight)

另外,您应该添加#include <string>

答案 1 :(得分:0)

首先,您必须包含string标头。没有它,string不会被识别为类型名称,string iFileName不被视为正确的声明。这就是你所谓的“运行前”错误的原因。

其次,

BMPCanvas(string iFileName, int iWidth, int iHeight) {

不是有效的函数声明。 C ++中的函数声明必须指定返回类型。允许省略返回类型的唯一函数是构造函数,析构函数和转换运算符。没有你的。

答案 2 :(得分:-1)

尝试使用字符串标题。

#include <string.h>