在C和C++中,通过C99和__func__宏可以获得当前执行函数的名称;用于MSVC的C++11和___FUNCTION___.

在铁 rust 中有类似的东西吗?

C中__func__的示例:

#include "stdio.h"

void funny_hello() {
    printf ("Hello from %s\n", __func__);
}

int main() {
    funny_hello();
}

输出Hello from funny_hello.

推荐答案

关于这一点有RFC条建议,但从未达成一致或付诸实施.

其缺席的理由是:

"总的来说,我不认为我们中的任何人给予了过多的支持

也许Rust将来会有类似的东西,

side note: __FUNCTION__是非标准的,__func__存在于C99/C++11中.

Rust相关问答推荐

使用InlineTables序列化toml ArrayOfTables

Tauri tauri—apps/plugin—store + zustand

如何对字符串引用的引用向量进行排序,而不是对最外层的引用进行排序?

S在Cargo.toml中添加工作空间开发依赖关系的正确方法是什么?

对于已经被认为是未定义行为的相同数据,纯粹存在`&;[u32]`和`&;mut[u32]`吗?

如何向下转换到MyStruct并访问Arc Mutex MyStruct实现的方法?

将serde_json读入`VEC<;T&>;`( rust 色)时出现问题

为什么我必须使用 PhantomData?在这种情况下它在做什么?

如何迭代存储在 struct 中的字符串向量而不移动它们?

`UnsafeCell` 在没有锁定的情况下跨线程共享 - 这可能会导致 UB,对吗?

unwrap 选项类型出现错误:无法移出共享引用后面的*foo

Option<&T> 如何实现复制

Google chrome 和 Apple M1 中的计算着色器

中文优化标题:跳出特定循环并返回一个值

使用在功能标志后面导入的类型,即使未启用功能标志

Rust:`sort_by` 多个条件,冗长的模式匹配

无法把握借来的价值不够长寿,请解释

当我不满足特征界限时会发生什么?

如果我不想运行析构函数,如何移出具有析构函数的 struct ?

提取 struct 生成宏中字段出现的索引