如何在lldb命令行中调用C ++对象的公共函数?

时间:2013-03-08 10:35:46

标签: c++ xcode debugging lldb

我正在尝试测试C ++函数调用的结果。该函数是公共的,调试器位于对象所属的调用中。这是类接口:

class NumerialDispersion {
    MeshSystem mesh;

    vector<double> b_k;
    vector<double> c_k;


public:
    void setupMeshSystem();
    void setUpAnalysis();
    void calculateK();
};

我需要测试我在MeshSystem中声明的函数。 MeshSystem类的接口如下:

class MeshSystem {

    Element mainMeshElement;


public:
    MeshSystem(Element element, double tStep);


    double get_b_k(uint index);

};

我需要在lldb中执行具有不同索引值的函数get_b_k()。我正在使用Xcode 4.6用户Mountain Lion。

lldb是否支持这样的表达式?如果是的话,任何人都可以帮助我吗?

许多人提前感谢。

1 个答案:

答案 0 :(得分:1)

要么输入

p mesh.get_b_k(1)

expr -- mesh.get_b_k(1)

请注意,该函数可能根本不存在于目标中,未使用且其主体刚刚未编译。在这种情况下,以某种虚假的方式使用它,或者使其可导出(使用属性注释((visibility(“default”))))