我正在尝试测试C++函数调用的结果。该函数是公共(public)的,调试器位于对象为成员的调用内。这是类接口(interface):

class NumerialDispersion {
    MeshSystem mesh;

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


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

我需要测试我在MeshSystem中声明的功能。 MeshSystem类的接口(interface)如下:
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是否支持此类表达式?如果是,请问有人可以帮助我吗?

非常感谢。

最佳答案

两种类型

p mesh.get_b_k(1)

要么
expr -- mesh.get_b_k(1)

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

关于c++ - 如何在lldb命令行中调用C++对象的公共(public)函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15291990/

10-11 14:51