El siguiente código genera la advertencia C6284 cuando se compiló con /analyze
en MSVC 2008: objeto pasado como parámetro '% s' cuando se requiere una cadena en la llamada a la función.Cómo prevenir C6284 al usar CString :: Formato?
CString strTmp, str;
str = L"aaa.txt"
strTmp.Format (L"File: %s", str);
Estoy buscando una buena solución para esto que no requeriría static_cast
¿Me equivoco o la solución correcta es usar 'str.GetBuffer()'? – sorin
Puede usar ambos para su situación, pero tienen diferentes significados para el lector. 'GetBuffer()' devuelve un búfer de cadena que permite la modificación directa (no 'const') del objeto' CString', mientras que 'GetString()' devuelve un búfer 'const' para el acceso de solo lectura. –