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

error C2668 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод массива функцией http://www.cyberforum.ru/cpp-beginners/thread263678.html
/* 4 8.Известна ежемесячная 3/п персонала предприятия в течение календарного года. Вывести фамилии сотрудников с минимальной и максимальной 3/п. Считать, что штат предприятия составляет 8 чел....
C++ Дана последовательность x1, x2, …, xn (n<=20). Пронормировать элементы последовательности их средним значением. Помогите,пожалуйста, с чем сможете.... 1.Дана последовательность x1, x2, …, xn (n<=20). Пронормировать элементы последовательности их средним значением. 2.Вычислить элементы матрицы С,... http://www.cyberforum.ru/cpp-beginners/thread263668.html
C++ Калькулятор с указателем
Доброго всем времени суток! Вот наваял калькулятор,а вот как в нем можно использовать вместо переменных один указатель? Зараннее благодарен за помощь. #include<iostream> #include<conio.h> using...
как элегантно писать код STL C++
Здравствуйте. Подскажите как правильнои оптимально записать следущие частички кода с использованием СТЛ Скажем,в качестве массив используем вектор vec в качестве обычного a 1)Считать элементи...
C++ Количество элементов в массиве http://www.cyberforum.ru/cpp-beginners/thread263639.html
Всем привет. у меня есть массив на 100 элементов, и я в него в ношу 3 элемента. double mas; int kol; mas=0; mas=1; mas=2;
C++ Динамическая память. Всем привет! Уважаемые знатоки, можете посмотреть мою реализацию класса вектор? У меня при их большем количестве в программе вечно выпадают ошибки доступа к памяти или она просто зависает. Может... подробнее

Показать сообщение отдельно
korez
8 / 8 / 0
Регистрация: 22.02.2011
Сообщений: 182

error C2668 - C++

25.03.2011, 04:27. Просмотров 1211. Ответов 8
Метки (Все метки)

ошибка
1>c:\documents and settings\er\мои документы\visual studio 2008\projects\project13\project13\project13.cpp(11) : error C2668: stack::stack: неоднозначный вызов перегруженной функции
1> c:\documents and settings\er\мои документы\visual studio 2008\projects\project13\project13\incl.h(17): может быть 'stack::stack(int,char)'
1> c:\documents and settings\er\мои документы\visual studio 2008\projects\project13\project13\incl.h(16): или 'stack::stack(void)'
1> при попытке сопоставить список аргументов '(void)'
1>Журнал построения был сохранен в "file://c:\Documents and Settings\er\Мои документы\Visual Studio 2008\Projects\project13\project13\Debug\BuildLog.htm"
1>project13 - ошибок 1, предупреждений 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
27
28
#include <iostream>
using namespace std;
 
typedef unsigned long ulong;
 
    class stack
{
    public:
    static const int max = 10;
    int size;
    int top;
    ulong *pitem;
    int *psize;
    int *ptop;
 
    stack();
    stack(int n = 1);
    stack(const stack &obj);
    ~stack();
    stack& operator=(const stack &obj);
    friend ostream& operator<<(ostream &os, const stack &obj);
 
    void show();
    bool isempty()const;
    bool isfull()const;
    bool push(ulong &item);
    bool pop(ulong &item);
};
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <iostream>
using namespace std;
 
typedef unsigned long ulong;
 
    stack::stack()
{
    cout << "Constructor\n";
    pitem = new ulong;
    size = 0;
    psize = 0;
    ptop = 0;
 
}
    stack::stack(int n)
{
    cout << "Constructor with parameters\n";
    if(n>max)
    {
        cout << "There is limit 10 on elements amount\n";
        pitem = new ulong [max];
    }
    else
    {
        pitem = new ulong [n];
    }
    size = 0;
    psize = 0;
    ptop = 0;
}
    stack::~stack()
{
    cout << "Destructor\n";
    delete pitem;
    if(ptop!=0)
        delete ptop;
    if(psize!=0)
        delete psize;
}
 
    stack::stack(const stack &obj)
{
    cout << "Copy constructor\n";
    delete pitem;
    pitem = new ulong [size];
    int i = obj.size;
    for(int j = 0; i>0; i--, j++)
        *(pitem+j) = obj.pitem[j];
    if(ptop!=0)
        delete ptop;
    ptop = new int;
    *ptop = obj.top;
    if(psize!=0)
        delete psize;
    psize = new int;
    *psize = obj.size;
}
    stack& stack::operator=(const stack &obj)
{
    cout << "Operator '='\n";
    if(this==&obj)
        return *this;
    delete pitem;
    int i = obj.size;
    pitem = new ulong [i];
    for(int j=0; i>0; i--, j++)
        *(pitem+j) = obj.pitem[j];
    if(ptop!=0)
        delete ptop;
    ptop = new int;
    *ptop = obj.top;
    if(psize!=0)
        delete psize;
    psize = new int;
    *psize = obj.size;
    return *this;
}
    ostream& operator<<(ostream &os, const stack &obj)
{
    os << "\n";
    return os;
}
    void stack::show()
{
    for(int j=size; j>0; j--)
        {
            cout << pitem[j] << " ";
        }
    cout << "\n";
    cout << size << "\n";
    cout << top << "\n";
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdafx.h>
#include <iostream>
#include "incl.h"
#include "project131.cpp"
 
using namespace std;
 
 
    int main()
{   
    stack stackobj1;
    stack stackobj2(5);
 
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru