如何在类成员函数中打印调用者对象名称
How shall I print caller object name inside a class member function?
参见示例
class MyClass {
public:
void fn() {
// Here I want to print caller object name,( here it is ***it1***)
}
};
int main() {
MyClass it1;
it1.fn();
return 0;
}
实例的变量名称不可用主要有两个原因:
- 它不是被调用函数的业务,因此无法访问它。过程编程的重点不是通过形式参数以外的任何东西访问调用上下文。
- 变量名称对最终程序没有影响。无论你把你的变量叫做it1,foo,甚至匿名对待它,都不应该也无关紧要。
或者,简而言之:如果fn()
是常量,你可以用一个临时的来称呼它:
MyClass().fn();
那你的答案是什么?对于 MyClass 对象数组来说呢?变量名称确定要调用的函数,而不是这些函数的工作方式。
相关文章:
- 方法中填充的shared_ptr到map在调用者中返回为空
- 当我将它们作为两个不同的输入文件调用时,如何打印它们?
- 从函数返回的左值引用实际上是右值(从调用者的角度来看)
- 将IloNumArray打印到在职回调(C++)内的文件中
- 如何在类成员函数中打印调用者对象名称
- std::thread::d etach 在原始调用者被销毁后会导致崩溃
- 将局部变量作为向量的成员传递给被调用者
- 函数调用者如何使用头文件来确定如何处理已编译的二进制文件
- 能否在c++的成员函数中找到调用者?
- 线程问题:控制权没有返回给调用者
- 如何在sublime text 2或3中找到c++函数的所有调用者
- c++返回相同的对象给调用者
- c++11为调用者构造对象
- 在调用者内部扩展被调用者的指导原则是什么(内联-编译器优化)
- Qt获取信号调用者并逐行读取文件
- 在c++中强制调用者捕获返回值并产生编译错误或警告的编译器标志
- c++:可以安全地使用函数内调用者的局部变量
- C++中的strchr如何保证其调用者不会修改作为参数传递的字符串
- 在C++中将消息传递给调用者
- 指向矢量的指针:函数中的大小正确,但在调用者中为 0