0
我正在嘗試創建一個跨平臺的程序。我剛創建了一個類,並創建了一個獲取當前用戶路徑的函數。我想稍後使用該路徑。但不知何故,我得到這些錯誤:C++ Sys/Stat.h有錯誤?
「/usr/include/x86_64-linux-gnu/sys/stat.h:-1:在成員函數 '無效文件管理:: p_getfilepath()':」
「/usr/include/x86_64-linux-gnu/sys/stat.h:105:error:expected unqualified-id before string constant」
「/home/david/VocabularyTrainer/filemanager.cpp:31:error:預計「}」在輸入
的」結束者均基於31日線是在這裏的最後一行在此代碼:
void FileManager::p_getfilepath()
{
#ifdef Q_OS_WIN32
#include <windows.h>
#endif
#ifdef Q_OS_LINUX
#include <sys/stat.h>
struct passwd *p;
uid_t uid;
if ((p = getpwuid(uid = geteuid())) == NULL)
{
QMessageBox* mb;
mb->setText("");
mb->exec();
delete mb;
}
else
{
filepath = p->pw_dir;
}
#endif
}
任何人都知道什麼是錯的?我在linux mint上。
你確定要包含一個頭文件*裏面有一個這樣的方法嗎?我幾乎可以肯定,結果不會很好。 – 2013-04-24 17:02:39
如果它在linux或unix系統上,我只能包含該頭文件。 – 2013-04-24 17:05:28
這很好,但你爲什麼要這樣做*內*方法? – 2013-04-24 17:05:55