2017-07-28 54 views
-4

所以我想做一些簡單的數學計算,但我甚至不能把一個數字放在一個變量中。初學者C++ - 做一些簡單的計算

int choice; 
cout << "\nEnter your choice..." << endl; 
cin >> choice; 

if (choice == 1) { 
    cout << "All entries:" << endl; 

    sqlite::sqlite db("student_marks.sqlite"); 
    auto cur = db.get_statement();   
    cur->set_sql("SELECT * FROM marks;"); 
    cur->prepare(); 

    while(cur->step()) { 
     int apples = cur->get_text(2); 
     int cherries = cur->get_text(3); 
     int sumFruits = apples + cherries 
    } 
} 

給我的錯誤

error: no viable conversion from 'std::string' (aka 'basic_string<char, char_traits<char>, allocator<char> >') to 'int' 

我怎樣才能解決這個問題?如果我做

cout << "Bananas number : " << cur->get_text(3) << endl; 

它打印沒有任何問題的價值..

感謝

+7

閱讀錯誤信息。 –

+2

'int apples = cur-> get_text(2);'那麼你希望發生什麼? – DimChtz

+0

所以我需要將'cur-> get_text(0)'轉換爲int? –

回答

2

你需要一個std::string轉換爲int - 嘗試使用stoi()

int apples = std::stoi(cur->get_text(2)); 
int cherries = std::stoi(cur->get_text(3)); 
+0

如果我這樣做,我得到錯誤'沒有可行的轉換從'std :: string'(又名'basic_string ,分配器>')到'int'' –

+0

你做了這兩個'蘋果'和「櫻桃」?天啊。 – LogicStuff

+0

是的,當然 - –