如何解决获取类名称作为TypeScript中的类型
在TypeScript 4.1中,是否可以获取类名或函数名作为文字字符串类型?
例如
template<typename T>
using signalType = void(T::*)();
template<typename T>
signalType<T> getDisconnectedSignal(T*)
{
return &T::disconnected;
}
QObject::connect(
clientsocket,getDisconnectedSignal(clientsocket),[=](){ disconnected(clientsocket); }
);
编辑(扩展用例)
由于第一个示例不够明确,可以使用class Foo { }
type Tpl = `${Foo["name"]}_${"a" | "b" | "c"}`; // error
// should be
// "Foo_a" | "Foo_b" | "Foo_c"
作为类型(此处为其他类型)进行解析。
"Foo_a" | "Foo_b" | "Foo_c"
我看到了“ nameof”运算符建议,但希望不是“答案”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。