реклама на сайте
подробности

 
 
> С++. Ошибка в private-контрукторе, почему то требует default-конструктор
jorikdima
сообщение Jan 8 2007, 22:16
Сообщение #1


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Добрый день.

Наткнулся на непонятную для меня проблему. Сначала делал для MSP430, но под Win на Visual Studio тоже самое, поэтому вопрос связан с общими понятиями C++.
Код
class A
{
public:
    static A* Init(int i);
private:
    A(int u);
    int r;
};

A* A::Init(int i)
{
    A(i);                   //[b]вот тут ошибка[/b]
}

A::A(int u)
{
    r=u;
}

void main()
{
    A* p=A::Init(6);
}

Вот такой вот простецкий код. Хочу сделать private-constructor, так как надо сделать ограничение на количество создаваемых объектов. В статической функции Init провожу проверку (сдесь не написал для наглядности) и если условие выполняется, то вызываю коснструктор, то есть выделяю память.
И все у меня здорово, до тех пор пока конструктор был без параметров, все работало как надо. А вот при добавлении параметра к конструктору оба компилятра выдают какую-то неперевариваемую мной ошибку:
Код
1. redifinition of formal parameter i
2. "A": no appropriate default constructor available

не понимаю, почему он хочет дефолт-конструктор и почему переопределение переменной i?


PS
Модераторы, не первый раз уже думаю в какую часть форума писать подобные вопросы. Нет подфорума по общим вопросам программирования (или в системный уровень программирования писать???). Написал тут хотя понимаю - ЦОС непричем.

Спасибо.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- jorikdima   С++. Ошибка в private-контрукторе   Jan 8 2007, 22:16
- - makc   Приведите, пожалуйста, полный код, а то, например,...   Jan 8 2007, 22:35
- - jorikdima   c new у меня тоже компилируется. Но я изначальн...   Jan 8 2007, 23:03
- - Oldring   Очевидно, компилятор распарсивает эту строчку как ...   Jan 8 2007, 23:13
- - jorikdima   Все что мне надо - это контроль количества созданн...   Jan 8 2007, 23:29
|- - Oldring   Цитата(jorikdima @ Jan 8 2007, 23:29) Все...   Jan 9 2007, 00:07
- - AndrewKirs   Цитата(jorikdima @ Jan 8 2007, 22:16) A* ...   Feb 9 2007, 17:31
- - jorikdima   Спасибо! Мне понравилась идея. Так и сделаю. С...   Feb 9 2007, 17:33
- - AndrewKirs   Всегда пожалуйста.   Feb 9 2007, 17:50
- - Pathfinder   Если ограничение на число экземпляров связано с су...   Feb 9 2007, 17:54
|- - AndrewKirs   Цитата(Pathfinder @ Feb 9 2007, 17:54) Ес...   Feb 9 2007, 18:04
- - Pathfinder   AndrewKirs, считать число экземпляров объекта внут...   Feb 11 2007, 11:21
- - shreck   Может быть не совсем по теме вопроса, но хочется п...   Feb 12 2007, 07:25
- - jorikdima   Тема была создана месяц назад, а кучу полезных сов...   Feb 12 2007, 08:56
- - AndrewKirs   Синглетон - красивая идея. Хотя все 3 варианта, пр...   Feb 13 2007, 15:30
- - AndrewKirs   Еще раз подумал, и понял, что мне не нравится в ст...   Feb 16 2007, 13:38


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 21:46
Рейтинг@Mail.ru


Страница сгенерированна за 0.01376 секунд с 7
ELECTRONIX ©2004-2016