Ich bekomme einen Fehler auf Mac OS X 10.12 mit Clang, und es möchte nicht meinen Code kompilieren. Ich möchte es über den Compiler kompilieren, aber es beharrt mich mit "Fehler: Member Initialisierer" pthread_mutex_init 'nicht eine nicht statische Daten Mitglied oder Basisklasse "beim Aufrufen von Pthread_mutex_init. Ich habe versucht, "statisch" vor der Erklärung pthread_mutex_t hinzufügen und entfernen, und ich habe bereits meine Pthread Header-Datei enthaltenC++ Mac OS X Pthread Initialisierung
EDIT: ja, ich file.h in meine Datei Datei.cpp enthalten. EDIT # 2: Ich habe versucht Mutex_ = (Mutex_pthread_t) PTHREAD_MUTEX_INITIALIZER und es gibt einige seltsame Fehler, die mir sagen, "irgendwo" einfügen.
Hier ist mein Code:
Memory.h:
#include <pthread.h>
class Memory {
static pthread_mutex_t mutex_;
}
Memory.cpp:
#include <Memory.h>
#include <pthread.h>
Memory::Memory() :
#ifdef __APPLE__
pthread_mutex_init(&mutex_, NULL);
#endif
Hey Kind. Kannst du mir bitte statt eines Downvotings einfach sagen, was ich hinzufügen oder reparieren muss. Ich würde dich runterziehen lassen, wenn du mir den Grund dafür nennen würdest, aber ein solches Loch zu sein wird dir im Leben nicht helfen. –
können Sie mehr Kontext anbieten? Ein minimales vollständiges Programm hilft der Community zu verstehen, was Sie verpasst haben. –
Ok hinzugefügt mehr Kontext. Bitte helfen Sie mir –