2016-11-26 11 views
-2

免責事項:私は何をしているのかわかりません&これを介して私の方法を試してみてください。非静的メンバー関数の無効な使用(whileループ/ noクラス/ wget popen)

コンパイラエラー。

main.cpp: In function ‘int sourcePull()’: 
main.cpp:35:28: error: invalid use of non-static member function 
    system(command.c_str + source); 
         ^

ソース機能;

#include <cstdio> 
#include <stdio.h> 
#include <fstream> 
#include <iostream> 
#include <string> 
#include <stdlib.h> 

using namespace std; 

int sourcePull() 
{ 
string source; 
string command; 
command = "wget -np -a source.log "; 

ifstream sourceFile ("sources.txt"); 
if (sourceFile.is_open()) 
{ 
    while (sourceFile.good()) 
    { 
     while (sourceFile >> source) 
     { 
      //system(command.c_str + source); 
      FILE* file = popen(command.c_str + source, "r"); 
     } 
     sourceFile.close(); 
    } 

} 
return 0; 
} 

私がメンバーになるためのクラスがない場合、どのように "ソース"がメンバー関数になるか分かりません。

は持っているが、事前に任意の助けのための「ソース」ポインタ(*ソース)、参照元(&ソース)作り、ないサイコロ...

感謝を試してみました。

+2

c_str意味だと思う - > c_str() –

答えて

0

私はあなたが

FILE* file = popen((command.c_str() + source).c_str(), "r"); 
           ^^^^ 
+0

が私に8分を与えると私は答えとしてマークされますが....とても簡単... ​​ ありがとうございました。 – Snow

+0

@Snowいいえ、まったくありません。 –