为与路径一起使用的函数创建良好的接口

时间:2011-08-24 06:00:36

标签: c path cross-platform

我有将文件路径作为输入参数的函数。这个功能是跨平台的。函数支持unicode和常规文件路径。这个功能的最佳界面是什么,知道我有2个选择:

  1. FunctionW中制作每个函数FunctionAWinAPI的两个版本。
  2. 制作一个将char *作为输入参数的版本,但此字符串必须为UTF8格式。
  3. 哪一个更好?

    提前致谢!

1 个答案:

答案 0 :(得分:1)

这实际上取决于您的其余代码以及您将如何使用它们。这里没有正确的答案 - 尝试估算您编写,使用和维护每个选项所需的时间,并尝试采用更容易的选项。
您还应该考虑FunctionAFunctionW之间的区别。如果差异不大,那么你可能会使用它们都会调用的单个内部辅助函数,因此编写和维护第二个函数的额外时间是最小的。如果是的话,考虑一下你所呈现的第二个选项将字符串转换为UTF8会有多么艰难(如果有的话)。