Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
soa432
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 18
#1

Переход на Visual Studio 2012 - C++

05.01.2013, 22:11. Просмотров 1021. Ответов 5
Метки нет (Все метки)

Вот обучался по книге Р.Лафоре ООП.
Вчера решил сменить компилятор, перешел с Visual Studio 6.0 на Visual Studio Ultimate 2012

Кто может объяснить что нужно дописывать в программу чтобы она работала ?

Код переписан из учебника. (Программа демонстрирующая работу стека)

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
29
30
31
32
33
34
35
36
37
38
#include "stdafx.h"   // Строка добавлена мною под VS 2012, остальной код в оригинале
#include <iostream>
using namespace std;
/////////////////////////////////////
class Stack
{
private:
    enum {MAX = 10};
    int st[MAX];
    int top;
public:
    Stack()
    {top(0);}
    void push (int var)
    { st [ ++top ] = var;}
    int pop()
    {return st [ top-- ];}
}
///////////////////////////////////////
 
int main()
{
    Stack s1;
    s1.push(11);
    s1.push(22);
    cout<<"1: "<<s1.pop<<endl;
    cout<<"2: "<<s1.pop<<endl;
    s1.push(33);
    s1.push(44);
    s1.push(55);
    s1.push(66);
    cout<<"3: "<<s1.pop<<endl;
    cout<<"4: "<<s1.pop<<endl;
    cout<<"5: "<<s1.pop<<endl;
    cout<<"6: "<<s1.pop<<endl;
    system("pause");
    return 0;
};
Ошибки:
1> Причина: невозможно преобразовать "int" в "const Stack"
1> Ни один конструктор не смог принять исходный тип, либо разрешение перегрузки конструктора неоднозначно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2013, 22:11     Переход на Visual Studio 2012
Посмотрите здесь:

Visual Studio 2012 на x64 - C++
В общем, решил брать ноут и вот думаю, пойдет ли VS 2012 на архитектуре х64, и будут ли с ней проблемы? (качать буду с {ссылка удалена} ...

Menustrip.C++ Microsoft Visual Studio 2012 - C++
Здравствуйте! Пытаюсь работать в windows forms. Cуть программы такова : пользователь открывает (используя стандартное меню объекта...

Visual Studio 2012 Ultimate Русская - C++
Дайте ссылку на Visual Studio 2012 Ultimate Русская Версия :wall: :wall: :wall:

Настройка SDL в Visual Studio 2012 - C++
Здравствуйте. Настраиваю SDL по данному видео: https://www.youtube.com/watch?v=mdQHYxe6zJo Подключил папки bin и include, скопировал файл...

Открытие процессов visual studio 2012 - C++
В общем, есть такой вот код: #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;Windows.h&gt; #include &lt;cmath&gt; #include &lt;winbase.h&gt; ...

Где взять visual studio 2012? - C++
Хотела спросить может быть у вас есть сылка для скачиванья visual studio 20012 полная версия?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Psilon
Master of Orion
Эксперт .NET
5882 / 4779 / 633
Регистрация: 10.07.2011
Сообщений: 14,399
Записей в блоге: 5
Завершенные тесты: 4
05.01.2013, 22:14     Переход на Visual Studio 2012 #2
soa432, ну так а что в ней не работает? Телепаты в отпуске..
soa432
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 18
05.01.2013, 22:16  [ТС]     Переход на Visual Studio 2012 #3
Ошибки:

1>e:\projects\stakaray\stakaray\stakaray.cpp(24): error C2628: недопустимый "Stack" с последующим "int" (возможно, отсутствует ";")
1>e:\projects\stakaray\stakaray\stakaray.cpp(25): error C3874: возвращаемый тип "wmain" должен быть "int", а не "Stack"
1>e:\projects\stakaray\stakaray\stakaray.cpp(29): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(30): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(35): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(36): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(37): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(38): error C3867: Stack:op: в вызове функции отсутствует список аргументов; используйте "&Stack:op" для создания указателя на член
1>e:\projects\stakaray\stakaray\stakaray.cpp(40): error C2664: Stack::Stack(const Stack &): невозможно преобразовать параметр 1 из "int" в "const Stack &"

1> Причина: невозможно преобразовать "int" в "const Stack"
1> Ни один конструктор не смог принять исходный тип, либо разрешение перегрузки конструктора неоднозначно
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
05.01.2013, 22:18     Переход на Visual Studio 2012 #4
В 20 строчке ; поставить после фигурной скобки
soa432
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 18
05.01.2013, 22:20  [ТС]     Переход на Visual Studio 2012 #5
Спасибо, разобрался, больше постараюсь по глупостям не писать, тупые ошибки...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2013, 22:28     Переход на Visual Studio 2012
Еще ссылки по теме:

Долгая компиляция MS Visual Studio 2012 - C++
Долго компилирует проект даже простой. Может быть дело в таком железе: Intel Celeron Dual-Core E5500 ОЗУ 4 гигабайта

Не удаётся запустить Visual Studio 2012 Express - C++
Я устанавливаю, но не ярлыка не файла drven.exe нету, и в пуске я тоже искал.Скачивал с разных сайтов ни как не могу решить проблему

Не корректная работа visual studio 2012 Express - C++
Приветствую. Вот такой код: #include &lt;iostream&gt; #include &lt;clocale&gt; using namespace std; int main() { setlocale(0,&quot;&quot;); int...

Visual Studio 2012 не воспринимает функцию cout<< - C++
Вот код программы: #include &lt;iostream&gt; using namespace std; int main() { cout &lt;&lt; &quot;Моя первая программа на С++\n&quot;; ...

хочу обойти античит punkbuster Visual Studio 2012 - C++
1&gt;------ Построение начато: проект: Win32Project11, Конфигурация: Debug Win32 ------ 1&gt; stdafx.cpp 1&gt; Win32Project11.cpp ...

Как подключить библиотеки OpenCV 3.0.0 к visual studio 2012? - C++
Как подключить библиотеки OpenCV 3.0.0 к visual studio 2012?


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

Или воспользуйтесь поиском по форуму:
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
05.01.2013, 22:28     Переход на Visual Studio 2012 #6
еще ошибки нашел
Цитата Сообщение от soa432 Посмотреть сообщение
cout<<"1: "<<s1.pop<<endl;
pop это функция, значит надо круглые скобки добавить:
C++
1
cout<<"1: "<<s1.pop()<<endl;
Yandex
Объявления
05.01.2013, 22:28     Переход на Visual Studio 2012
Ответ Создать тему
Опции темы

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