能力值:
( LV2,RANK:10 )
|
-
-
2 楼
听起来只需要一个unicode字符转utf-16或者utf-8函数
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
wx_Aure__
听起来只需要一个unicode字符转utf-16或者utf-8函数 当然需要, 但是所有字符串都用函数转换, 不仅效率低性能差白费CPU, 也不像话. 要知道所有API全部是A或W字符串所以起码像“L”这样的宏更好. 如果直接能定义ascii字符, 更更好. 否则这语言就趿拉了(刚出来不完善还说得过去, 这都多少年了, 连基本字符串都不支持的话, 还指望和C PK运行速度)
最后于 2023-1-14 08:14
被PEDIY编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
#[macro_export]
macro_rules! pcwstr {
($str: expr) => {
windows::core::PCWSTR::from_raw(
$str.encode_utf16()
.chain([0])
.collect::<Vec<u16>>()
.as_ptr(),
)
};
}
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
LYQINGYE
#[macro_export]
macro_rules! pcwstr {
($ ...
先赞了. 不能让好意帮忙者还损失一枚雪币, heha~
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
1. windows crate 里有类似 L("") 的宏:f3fK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1L8$3y4K6i4K6u0W2M7Y4y4Q4x3V1k6%4K9h3&6V1L8%4N6K6i4K6u0r3L8r3q4@1k6i4y4@1i4K6u0r3N6$3W2F1k6r3!0%4M7#2)9J5c8X3#2S2j5%4u0G2i4K6u0W2N6#2)9J5k6h3S2@1L8h3H3`. 2. encode_utf16,其实也多不了多少开销 3. 直接用 UTF-16 编码的 String,比如 ae3K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1L8$3y4K6i4K6u0W2M7Y4y4Q4x3V1k6#2N6r3j5I4y4Y4y4@1M7X3W2F1k6#2)9J5c8X3I4S2N6r3g2K6N6q4)9J5c8Y4g2@1k6U0p5$3M7%4c8J5K9h3&6Y4i4K6u0r3
|
|
|