gpt4 book ai didi

python - 为使用模板编写的 C++ 类成员函数设置 GDB 断点

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:45:46 27 4
gpt4 key购买 nike

我正在尝试在使用模板定义的 C++ 类成员函数处设置断点。我在 stackoverflow 中寻找解决方案,但找不到相同的问题。下面是函数定义的示例代码(来自py-faster-rcnn caffe代码,Dtype定义为float outside)。

template <typename Dtype>
void SoftmaxWithLossLayer<Dtype>::Forward_gpu(
const vector<Blob<Dtype>*>& bottom, const vector<Blob<Dtype>*>& top) {
softmax_layer_->Forward(softmax_bottom_vec_, softmax_top_vec_);
const Dtype* prob_data = prob_.gpu_data();
const Dtype* label = bottom[1]->gpu_data();

昨天成功设置断点使用

br SoftmaxWithLossLayer<float>::Forward_gpu( const vector<Blob<float>*>& , const vector<Blob<float>*>& )

但是今天早上,它不起作用了!可能是什么问题?如果我使用 br filename:linenuber,它会起作用。
(顺便说一句,我正在使用附加到运行 python 的进程的 DDD,包括由 boost 包装的 C++ 库,但我希望这是无关紧要的。)

最佳答案

我从未尝试过这个,但您是否考虑过使用 nm 来确定它在共享库中的定义方式?您可能能够使用该信息来帮助 ddd/gdb 始终如一地找到模板方法。

关于python - 为使用模板编写的 C++ 类成员函数设置 GDB 断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39029908/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com