Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
defetex
2 / 2 / 1
Регистрация: 08.03.2014
Сообщений: 48
#1

Error C2664: std::vector<_Ty>::push: невозможно преобразовать параметр 1 из 'double' в 'const std::string &' - C++

06.04.2014, 17:16. Просмотров 1416. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <stack>
#include <sstream>
#include <string>
 
using namespace std;
 
int main()
{
string line;
stack<???> stack; //????
while (getline(cin, line)) {
       stringstream expression(line);
       string token;
       while (expression >> token) {
             if (isdigit(token[0])) {
                  stack.push(atof(token.data()));
                } else if (token == "+") { 
                            double x = stack.pop(); //??
                            double y = stack.pop();//??
                            stack.push(y + x);
                           }
               }
       cout << stack.peek();
     }
}
Как можно исправить код?
Ошибки:
error C2664: std::vector<_Ty>::push: невозможно преобразовать параметр 1 из 'double' в 'const std::string &'
1> with
1> [
1> _Ty=std::string
1> ]
1> Причина: невозможно преобразовать 'double' в 'const std::string'
1> Для выполнения данного преобразования нет доступного оператора преобразования, определенного пользователем, или вызов оператора невозможен
http://www.cyberforum.ru/cpp-beginners/thread1425005.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2014, 17:16
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Error C2664: std::vector<_Ty>::push: невозможно преобразовать параметр 1 из 'double' в 'const std::string &' (C++):

Error C2440: =: невозможно преобразовать 'std::string' в 'double'
&gt;c:\users\nreshetova\documents\visual studio...

Error C2440 std::vector<_Ty>
класс CFilename class CFilename { public: CFilename() { }...

На основе исходного std::vector<std::string> содержащего числа, создать std::vector<int> с этими же числами
подскажите есть вот такая задача. Есть список . Создать второй список, в...

Error C2039: 'Sth' : is not a member of 'std::vector<_Ty>'
#include &lt;iostream&gt; #include &lt;vector&gt; using std::cin; using std::cout;...

Error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в 'char *'
error C2664: sprintf: невозможно преобразовать параметр 1 из 'const char *' в...

1
zitxbit
89 / 741 / 279
Регистрация: 11.04.2012
Сообщений: 971
06.04.2014, 17:21 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <stack>
#include <sstream>
#include <string>
 
using namespace std;
 
int main()
{
string line;
stack<double> stack;
while (getline(cin, line)) {
       stringstream expression(line);
       string token;
       while (expression >> token) {
             if (isdigit(token[0])) {
                  stack.push(atof(token.data()));
                } else if (token == "+") { 
                            double x = stack.top();
                            stack.pop();
                            double y = stack.top();
                            stack.pop();
                            stack.push(y + x);
                           }
               }
       // cout << stack.peek(); ????????
     }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.04.2014, 17:21
Привет! Вот еще темы с решениями:

ошибка error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_stri
на вод поступают 2 строки типа string. определить количество вхождений строки 2...

Error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "WNDCLASSEX *" в "const WNDCLASSW *"
почему выдаёт ошибку? int RegClass(WNDPROC Proc,LPCTSTR szName,UINT...

Error C2664: atoi: невозможно преобразовать параметр 1 из "_TCHAR *" в "const char *" Как исправить эту ошибку в коде?
#include &quot;stdafx.h&quot; #define _XOPEN_SOURCE 500 #include &lt;conio.h&gt;...

error C2664: невозможно преобразовать параметр
Здравствуйте. Отправьте меня если что в другую тему, где это обсуждалось, но я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru