Я играю в C ++, просто для удовольствия. Я только начал использовать функции и хочу сделать оператор if, который обращается к различным функциям, основываясь на том, пытается ли пользователь умножить на 1 или нет.
Вот код:
//Test för att se om jag förstår funktioner
#include <iostream>
#include <string>
using namespace std;
//Deklarerar variblar som jag ska använda
int a,b,x;
string s;
//Skriver ut funktionen för att multiplicera
int multi(int a, int b)
{
x = a * b;
return x;
}
int ans(void)
{
using std::string;
string s = "Lol";
return s;
}
//Samlar in värde från användaren, skickar den till funtktionen "multi" som multiplicerar den, sedan skickar den tillbaks den till main via return. Main visar sedan
//resultatet för användaren
int main( void )
{
using std::cout;
using std::cin;
using std::string;
cout << "Ange ett nummber som du vill multiplicera: \n\n";
cin >> a;
cout << "\n";
cout << "Ange det andra nu: \n";
cin >> b;
cout << "\n";
if(a == 1)
{
multi(a,b);
cout << "Svaret är: " << x << "\n";
}
else
{
ans;
cout << s;
}
return 0;
}
Единственное, что происходит, это то, что он возвращает сообщение;
adrian @ adrian-HP-ProBook-4525s: ~ / Documents / code $ g ++ test10.cpp -o test
test10.cpp: в функции int ans ():
test10.cpp: 26: 10: ошибка: невозможно преобразовать ‘std :: string {aka std :: basic_string} 'в' int 'взамен
Это так странно, потому что, насколько я вижу, я не пытаюсь преобразовать это обратно, не так ли?
// Привет