我有一个用ISO C++编写的库。它不使用Winapi,TCHAR或任何类似的东西。我目前正在将其构建为一个字符集为Unicode的静态库。我打算将它链接到其他库,其中一些是使用Unicode构建的,有些是MBCS。
在这种情况下,我是否需要创建两个配置并构建两个版本(MBCS和Unicode)?
发布于 2012-10-07 01:50:07
这不是问题。使用utf-16编码的Unicode字符串的代码使用wchar_t*,使用传统8位编码的代码使用char*。对于编译器和链接器都是明确的。该设置存在的唯一原因是因为Windows和非标准<tchar.h>包含在UNICODE和_UNICODE #定义的指导下将类型定义(如TCHAR)转换为这些字符串类型之一的宏。
当然,在使用char*作为字符串的程序中使用这个库将是一个巨大的问题。程序必须翻译字符串,注意强制转换是不行的。
https://stackoverflow.com/questions/12761577
复制相似问题