我正在創建一些文件打開對話框,並偶然發現了WinAPI中不一致的東西(嘿嘿)。爲什麼OPENFILENAME lpstrFileTitle參數爲LPSTR而不是LPCSTR?
我完全理解爲什麼lpstrFile
是LPSTR
作爲路徑寫入此變量。
很好,但爲什麼lpstrFileTitle
不是LPCSTR
?我已閱讀MSDN上的文檔並搜索了一遍,發現沒有令人滿意的解釋,因爲它看起來不像是以任何方式修改。
這是一個兼容性殘留或什麼?
因爲我不能使用c_str()
和求助於&str[0]
,所以在傳遞std :: string時會導致惱人的解決方法。
我只是編輯我的帖子,因爲我也意識到這一點。本來希望MSDN以類似於'lpstrFile'的方式來提示它。謝謝! – Samuel