J'ai un projet MFC écrit en C++ et je veux afficher du texte dans un contrôle CEdit. Jusqu'à présent, j'ai essayé ceci:Comment afficher std :: string dans CEdit en C++
MFCApplication1Dlg.h
...
private:
static CEdit m_progress;
public:
static void setProgress(std::string message);
...
MFCApplication1Dlg.cpp
...
void CMFCApplication1Dlg::setProgress(std::string message)
{
m_progress.SetWindowTextW((LPCTSTR)message.c_str());
}
void logMessage(std::string message)
{
if(logFile.is_open())
{
logFile << message;
logFile.flush();
CMFCApplication1Dlg::setProgress(message);
}
}
...
Quand je compile je cette erreur:
error LNK2001: unresolved external symbol "private: static class CEdit CMFCApplication1Dlg::m_progress" ([email protected]@@[email protected]@A)
Quelqu'un peut-il dire moi ce qui est avec cette erreur et comment pourrais-je afficher les messages dans CEdit?
Il y a des tonnes de doublons à cette question, et cela a à voir avec vous seulement * déclarant * le membre statique de façon variable, et non * définissant * n'importe où. C'est à dire. n'a rien à voir avec 'std :: string' et le réglage de la valeur des variables membres. Veuillez faire une recherche rapide pour la définition des variables membres * C++ statiques *. –