c++ - c++中调试和文件流的奇怪错误

标签 c++ netbeans

我正在处理的程序具有从文本文件中读取一些参数的功能,基本如下所示:

void ParamSet::readFrom(const std::string filename){
    std::ifstream infile(filename.c_str());
    std::string line;

    if(!infile.is_open())
        throw(20);
    /* ... read stuff ... */
    infile.close();
}

运行程序时效果很好。现在,当我在 Netbeans 中调试它时(我需要在另一个区域中找到一些段错误)我的异常 (20) 被抛出,所以它说文件没有打开。

知道这是怎么回事以及我该如何解决它吗?

最佳答案

可能您的 Netbeans 环境有另一个工作文件夹设置,因此找不到该文件。顺便说一句,考虑传递字符串作为引用:

void ParamSet::readFrom(const std::string & filename){
    std::ifstream infile(filename.c_str());
...

关于c++ - c++中调试和文件流的奇怪错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1573213/

相关文章:

c++ - C++中的switch语句

c++ - 是否真的使用了使用指针类型实例化模板的能力?

java - Jboss Web服务:Error :java. io.IOException:无法传输消息

java - 将org.springframework.test包添加到netbeans中的spring-2.5.6-SEC01.jar中

java - 如何在maven中设置jdk的自定义版本?

c++ - 为什么 Eclipse 会在我的源代码中标记伪错误?

c++ - 指向可用于动态分配字符串数组的字符串的指针

c++ - 运算符 "!="不匹配(c++ 迭代器)

netbeans - 使用 EclipseLink 静态编织在 Netbeans 中进行调试

php - 在 Windows 7 64 位上使用 Netbeans 7.0.1 安装 PHP CodeSniffer