繁体   English   中英

如何声明我的课程的实例?

[英]How do I declare an instance of my class?

我有一个Parser.h,Parser.cpp文件,其中的函数是构造函数

Parser::Parser(string filename){....}

现在,我想在我的functions.cpp文件中使用解析器,在该文件中,我确保

#include "Parser.h"

在我的函数中,我想使用解析器,如何创建它的新实例,这就是我所拥有的,但是我得到了语法错误。

Parser::Parser parser("filename.txt");

抱歉,我应该确保我正确地复制了代码,没有引号错误,也没有忘记包含parser.h

(如果您#include d Parser.h )只需要

Parser parser("filename.txt");

Parser::Parser标记类Parser的构造方法的定义。 但是,构造函数不能(也不需要)直接调用-通过定义上述Parser的实例隐式调用它。

请注意,文件名应使用双引号(单引号表示单字符,双引号用于文本字符串)。

#include "functions.h"

您的头文件名为Parser.h ,而不是functions.h

这样做:

#include "Parser.h"

然后这样:

Parser parser("filename.txt"); //not Parser::Parser parser('filename.txt');

对于字符串文字(例如"filename.txt" ,请使用双引号而不是单引号

尝试

Parser::Parser parser("filename.txt");

单引号用于单字符而不是字符串。

Parser parser("filename.txt");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM