库中发生哪条线路异常

问题描述:

我使用armadillo库。某处我得到这个例外:库中发生哪条线路异常

error: Mat::init(): size is fixed and hence cannot be changed 

terminate called after throwing an instance of 'std::logic_error' 
    what(): Mat::init(): size is fixed and hence cannot be changed 
Aborted (core dumped) 

我知道为什么。但我不知道在哪里。

有没有办法获得导致此问题的线?是valgrind或任何其他工具能够做到这一点?

更新:

编译代码:

g++ -g -Wall -Wfatal-errors -Wextra -std=c++11 
      main.cpp -lboost_filesystem -lboost_system 
+0

你有没有试过在核心文件中寻找回溯? 你的输出的最后一行是'core dumped'。 – RomanK 2015-03-13 06:45:03

+0

@罗曼克,怎么做?顺便说一句,我用g ++来编译。我不使用IDE。 – ar2015 2015-03-13 06:45:49

+0

要知道在哪里调试它...添加一些断点... – 2015-03-13 06:46:04

你可以张贴在错误出现在代码中的一个小片段? 我有类似的错误,但不记得是什么导致它,但尝试存储命令的结果在其他一些变量,并检查它。并把“cout”找到导致错误的陈述。

+0

据我记得,它就像这个'fixed_vector = normal_vector_different_size'。但是我没有修改它的代码。 – ar2015 2015-03-15 22:14:03