我在.cpp文件中使用这一小段代码获得运行前错误。
突出显示 iFileName
并说“错误:此声明没有存储类或实例类型。”
iFileName
和iWidth
之间的逗号是“错误:预期声明”
右括号表示“错误:预期声明”
#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;
}
有谁知道为什么我会遇到错误?
答案 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>