问题标签 [member-functions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 继承成员函数访问数据成员
考虑下面的示例代码:
在上面的代码中,class A
有一个私有数据成员b
,class B
也有一个私有数据成员b
。该函数display()
用于显示数据成员。当我使用 调用 display()时, display() 访问类 Aob1.display()
的私有数据成员。我明白这一点。b
但是当我调用 display usingob2.display
时,b
display() 访问哪个?是b
A级的还是b
B级的?请解释为什么它访问class A's b
或class B's b
c++ - C++ 类枚举成员变量
我有一个枚举类型 GameStates 的类。在(公共)构造函数中,我像这样初始化 GameStates:
然后在一个公共方法 run() 我有一个这样的开关:
虽然代码没有错误,但没有满足任何状态。我应该如何访问 enumGameState 的值?
编辑:所有类代码。
c++ - C++ 类成员函数和来自 C API 的回调
我正在尝试学习如何write_data(…)
从类中的函数调用此函数,funmain()
如下面的代码所示。(我知道如果我只列出这两个函数而不把它放在一个类中,这个程序就可以工作)。
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data)
行给了我错误,不会让我调用 write_data(...) 函数。您能否更正我的代码并告诉我如何实现这一点。任何帮助将不胜感激。谢谢。
c++ - 如何从其地址调用成员函数
我有一个驻留在应用程序类中的函数,我的目标是将 dll 注入目标进程并通过其地址调用该成员函数。这是功能:
我试过这样称呼它
我已经使用了一切:,,,__stdcall
你__cdecl
的__thiscall
名字。
c++ - 使用 boost 进行成员函数绑定
我正在尝试建立一个系统,其中派生自 GuiObject 类的 GUI 对象可以注册 Serialiser 和 Deserialiser,以便它们可以仅基于类别名序列化/反序列化到 XML 文件/从 XML 文件中序列化/反序列化。例如:
Button
在 XML 中可能看起来像这样:
GuiObject
所以想法是客户端代码可以为派生类注册一个序列化器和反序列化器,使用对象的占位符来调用函数:
Button::WriteElement
好像:
GuiObjectXmlSerializer.h:
GuiObjectXmlSerializer.cpp:
目前,我在该serialisation_func(object, element);
行收到此错误:
所以我想知道如何延迟传入对象以调用成员函数,指定要在调用函数的同时使用的对象。我已经盯着这个有一段时间了,但无济于事。
干杯。
python - Python OO——成员函数定义和关键字self
我正在用这个构造函数编写一个 Python 类:
并定义两个成员函数:
调用第二个函数时,会发生错误:
你有线索吗?
c++ - 迭代 std::for_each 中成员函数的输出
我有一个带有访问器成员函数的类,我想调用它并将结果应用到使用 std::for_each 的仿函数。我在下面有一个使用 for 循环和 for_each 的工作版本,但 for_each 版本既神秘又麻烦。考虑到我可以使用 boost 而不是 C++11,有没有办法可以使 for_each 版本更简洁?
这是完整的工作实现:
注意:我最初的问题是如何构建一个 for_each ,但我发现这个解决方案和一个全新的问题没有多大意义。
谢谢,非常感谢所有帮助!
c++ - C++ 指向方法的指针模板推导在针对 x86 时无法编译,但适用于 x64
我有这个示例代码:
这与g++
. 它也可以与 VC10 一起编译,但仅限于为 64 位平台构建时。当我为 32 位平台构建时,我得到这个编译错误:
该错误表明正在使用非专业版本的 Gobstopper,这一定Signature
意味着int (void)
. 但错误也清楚地说Signature
是 int (void)
。那么错误从何而来?我该如何解决?
我唯一能想到的可能会从 32 位更改为 64 位并且不会出现在错误消息中显示的签名中的是调用约定;显然,VC x64 有一个统一的调用约定,而对于 x86,每个调用约定都是不同的。但即使这是问题所在,我也不知道如何解决它。
编辑:我应该提到我用常规(非成员)函数指针尝试了这个,效果很好。
visual-c++ - Error in storing member function as function pointers in C++
I am trying to store a pointer to a member function in a structure which will be used to call the function later in my program.
Something like this:
the other file as:
Now my cpp file needs to store instance of this func1 in my structure member storePtr
But I am getting compilation error at line "func2(func1);" as "error C3867: 'pqr::func1': function call missing argument list; use '&pqr::func1' to create a pointer to member"
I have used &pqr:: to define the scope but it also doesn't solve my problem and I am not able to understand what to do.
c++ - “错误:非静态成员引用必须相对于特定对象”是什么意思?
在线return CPMSifDlg::EncodeAndSend
我有一个错误:错误:非静态成员引用必须相对于特定对象。
这是什么意思?