0
012dbにgdbのアルマジロ行列を印刷する方法が見つかりました。しかし、どうすればどうなるのですか?複雑なcppプロジェクトでgdbのarmadilloマトリックスを印刷するには?
#include <iostream>
#include <armadillo>
template<class Matrix>
void print_matrix(Matrix matrix) {
matrix.print(std::cout);
}
//provide explicit instantiations of the template function for
//every matrix type you use somewhere in your program.
template void print_matrix<arma::mat>(arma::mat matrix);
template void print_matrix<arma::cx_mat>(arma::cx_mat matrix);
は、debug_armadillo.hファイルの中にあります。どのようにコール機能を実行する必要がありますか?
call 'debug_armadillo.h'::print_matrix<arma::Mat<float>>(C)
が、私が手にエラーがある:私は入力しようとした実施すべきである
No symbol "print_matrix" in specified context.
ありがとうございました。しかし、あなたの最後のコマンドの結果は何もありません。これはおそらく、print_matrixがバイナリで生成されていないことを意味します。そのため、指定されたコンテキストで "No symbol" print_matrix "エラーが発生します。"これをどうすれば解決できますか? makeファイルはうまく見えました。 – user3616359
どこからでも 'debug_armadillo.h'を含めていることを確認してください。あるいは 'print_matrix'コードをいくつかのcppファイルに移動してください。 – ks1322
これはこれが奇妙な理由です。 'debug_armadillo.h'はmakefileに含まれており、すべてがうまく構築されているようです。そして、そうでない場合、タブの補完はうまくいかないと思います。 – user3616359