[英]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.