C++ 获取句柄字符串值

标签 c++ string casting handle

我有一个像这样声明的HANDLE:

HANDLE handle = new string("test");

如何从句柄中获取值?

像这样:

string myval = (string)handle; //Cast doesn't work

最佳答案

如果HANDLEvoid*string*然后你可以使用

string myval = *(string*)handle;

或更清晰

string myval = *reinterpret_cast<string*>(handle);

如果HANDLE是任何其他类型,那么您的程序的行为可能是未定义的。

请注意,您的字符串的值拷贝将被获取。

关于C++ 获取句柄字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31657838/

相关文章:

c# - 为什么某些值类型的数组之间的强制转换似乎会破坏类型安全?

c++ - STL中有noop迭代器吗?

C++:如何将十六进制 HANDLE 转换为十进制?

c++ - 使用 stringstream 精度格式化 float 但丢弃零填充

java - 读取文本文件时出现问题

asp.net - ASP.NET 内联表达式中的 DBNull 到 String 有转换错误

c++ - 是否有可能在 C++ 中完全避免 C 风格的转换?

c++ - GCC "Internal compiler error: Error reporting routines re-entered"(包含完整代码)

c++ - 如何在 MPI 中发送 std::string?

java - 使用正则表达式将字符串拆分为两个字符串