Ich möchte getpid
Funktion aus Headern sys/types.h, unistd.h (C-Stil) verwenden, wenn ich -std = c + verwende +11 flagge aber danach habe ich:getpid auf Linux bei der Verwendung von -std = C++ 11 als Compiler-Flag
"funktion getpid konnte nicht gelöst werden".
Gibt es eine Art Workaround oder eine gleichwertige Funktion?
@Edit:
prüfe ich es noch einmal, und es ist nicht Flagge bemängeln
head.h
#ifndef HEAD_H_
#define HEAD_H_
#include <sys/types.h>
#include <unistd.h>
void test();
#endif /* HEAD_H_ */
head.cpp
#include "head.h"
void test()
{
pid_t pid = getpid(); // Function 'getpid' could not be resolved
}
und das ist komisch, weil ich auch einen Test auf "sauber" Projekt mache und es gab überhaupt kein Problem.
main.cpp
#include <sys/types.h>
#include <unistd.h>
int main()
{
pid_t pid = getpid();
return 0;
}
Es sieht aus wie ich nicht in der Lage bin jede Funktion von unistd zu bekommen, weil
char* a_cwd = getcwd(NULL,0);
auch ungelöst ist
Beitrag entsprechenden Code. Senden Sie die _complete_ Fehlermeldung (die der Compiler gibt). – ForceBru
getpid ist in C++ 11 vollständig gültig. Also brauchen wir mehr Informationen. – Joe
Weitere Details hinzugefügt – user3626411