gpt4 book ai didi

c++ - gdb:如何调用 operator char const*()?

转载 作者:行者123 更新时间:2023-12-03 06:57:10 25 4
gpt4 key购买 nike

我的类(class)有 operator const char*() const { return "foo";

我让 gdb 7.12.1-48.el7 在变量 q 属于此类的地方停止。

我键入 p q.,当我按下该键时,我会看到它的所有方法和成员的完整列表,包括 operator char const*

但是,我收到了对这些命令的响应。

(gdb) p q.operator char const*()
Couldn't find method MyClass::operatorconst char *

(gdb) p q.operator char const*
There is no member or method named operatorconst char *.

(gdb) p q.(operator char const*)
A syntax error in expression, near `(operator char const*)'.

(gdb) p q.(operator char const*)()
A syntax error in expression, near `(operator char const*)()'.

关于如何调用此方法有什么想法吗?

最佳答案

您可以只使用隐式转换。对我来说,p (const char*)q 在 gdb 8.2.1 中工作:

(gdb) p (const char*)q
$2 = 0x7ffffffedaf0 "qwer"
(gdb)

关于c++ - gdb:如何调用 operator char const*()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64119531/

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