gpt4 book ai didi

c++ - 我们可以通过 D 总线访问数据成员和对象指针吗?

转载 作者:行者123 更新时间:2023-11-30 18:03:25 25 4
gpt4 key购买 nike

我一直在访问公开的成员函数,对应于通过 D-Bus 公开的对象。有什么方法可以让我访问(公共(public))数据成员吗?如果是这样,怎么办?

我也在这里读到-

[http://www.qtcentre.org/archive/index.php/t-24238.html ]

不可能通过 D-Bus 传递指针。只是想确认一下。

最佳答案

是否可以访问对象的数据成员取决于它们是声明为public还是private。查看头文件中的类(或结构)定义。这是正确的,与该类映射到 D-Bus 上的某些内容这一事实无关,尽管假设该类可能编写不正确并允许您执行 D-Bus 不支持的操作,在这种情况下,我从提供的信息中无法知道会发生什么。

class DBusThing
{
int seeBelowMember;
public:
int accessibleMember;
int accessibleMethod(int argument);
private:
int inaccessibleMember;
}

void someFunc()
{
DBusThing foo;
int ret = foo.accessibleMethod(5); // legal
foo.accessibleMember=5; // legal
foo.inaccessibleMember=5; // illegal
foo.seeBelowMember=5; // illegal because DBusThing is declared class.
// If DBusThing had been declared struct, seeBelowMember would be accessible.
}

我判断该类可能编写正确,并且会阻止您尝试不可能的事情。

关于c++ - 我们可以通过 D 总线访问数据成员和对象指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8470759/

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