无法访问地址 xxxx 处的内存

问题描述 投票:0回答:0

全局.h

class PERM
{
public:
    char matpath[256];

public:
    PERM()
    {
       nnode=0;
       npart=0;
       leftSize=0; 
       cSize=0;
    }

    int loadMatrixMM();
};

功能.cc

#include "globals.h"

int PERM::loadMatrixMM()
{
    ifstream fin(matpath);
    ...
}

main.cc

#include "globals.h"

int main(int args, char *argv[])
{
    PERM perm;
    sprintf(perm.matpath,"%s\0",argv[1]);
    perm.loadMatrixMM();
    ...
}

我使用gdb进行调试,当它运行到[ifstream fin(matpath)]时,它中止并说无法访问该地址的内存...... 我将 [ifstream fin(matpath)] 更改为 [ifstream fin(PERM::matpath)] 和 [ifstream fin(this->matpath)]。

c++ class gdb
© www.soinside.com 2019 - 2024. All rights reserved.