Конец рабочего дня и C2512
От: R1K0 Россия  
Дата: 11.09.09 12:29
Оценка:
Народ. Подскажите ПЛЗ из-за чего эта ошибка возникает, MSDN читал, но смысла уже не догоняю

Вот кусок класса:

class cRequest
{
    public:
        cRequest() : _socket(INVALID_SOCKET) {}
        cRequest(string urlToServer_);
        cRequest(SOCKET socket_);
        ~cRequest();
...
};

Все методы релизнуты и дефолтовый конструктор используется

cRequest    * proxy = new cRequest();


НУ вот почему ?
Re: Конец рабочего дня и C2512
От: Kh_Oleg  
Дата: 11.09.09 12:37
Оценка:
Здравствуйте, R1K0, Вы писали:

RK>Народ. Подскажите ПЛЗ из-за чего эта ошибка возникает, MSDN читал, но смысла уже не догоняю


RK>Вот кусок класса:


RK>
RK>class cRequest
RK>{
RK>    public:
RK>        cRequest() : _socket(INVALID_SOCKET) {}
RK>        cRequest(string urlToServer_);
RK>        cRequest(SOCKET socket_);
RK>        ~cRequest();
RK>...
RK>};
RK>

RK> Все методы релизнуты и дефолтовый конструктор используется

RK>
RK>cRequest    * proxy = new cRequest();
RK>


RK>НУ вот почему ?


Русская буква 'c' вместо аналогичной латинской не могла затесаться?
Re: Конец рабочего дня и C2512
От: Сергей Мухин Россия  
Дата: 11.09.09 12:39
Оценка:
Здравствуйте, R1K0, Вы писали:

RK>НУ вот почему ?


мне казалось, что в таких случаях, было бы разумно показать всё сообщение и строчку, на которую оно указывает.

может среди членов есть требующие конструктор?
---
С уважением,
Сергей Мухин
Re[2]: Конец рабочего дня и C2512
От: R1K0 Россия  
Дата: 11.09.09 12:55
Оценка:
Здравствуйте, Сергей Мухин, Вы писали:

СМ>Здравствуйте, R1K0, Вы писали:


RK>>НУ вот почему ?


СМ>мне казалось, что в таких случаях, было бы разумно показать всё сообщение и строчку, на которую оно указывает.


СМ>может среди членов есть требующие конструктор?


cRequest() : _socket(INVALID_SOCKET) {} вот сюда


Error    1    error C2512: 'cRequestData' : no appropriate default constructor available    d:\...\request handler.h
Re[3]: Конец рабочего дня и C2512
От: Sergey Россия  
Дата: 11.09.09 13:03
Оценка:
Здравствуйте, R1K0, Вы писали:

СМ>>мне казалось, что в таких случаях, было бы разумно показать всё сообщение и строчку, на которую оно указывает.


СМ>>может среди членов есть требующие конструктор?


RK>cRequest() : _socket(INVALID_SOCKET) {} вот сюда



RK>
RK>Error    1    error C2512: 'cRequestData' : no appropriate default constructor available    d:\...\request handler.h

RK>


Ну так у тебя там наверное в классе cRequest есть члены типа cRequestData? А у cRequestData отсутствует конструктор по умолчанию?
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[4]: Конец рабочего дня и C2512
От: R1K0 Россия  
Дата: 11.09.09 14:00
Оценка: :)
Здравствуйте, Sergey, Вы писали:

S>Здравствуйте, R1K0, Вы писали:


СМ>>>мне казалось, что в таких случаях, было бы разумно показать всё сообщение и строчку, на которую оно указывает.


СМ>>>может среди членов есть требующие конструктор?


RK>>cRequest() : _socket(INVALID_SOCKET) {} вот сюда



RK>>
RK>>Error    1    error C2512: 'cRequestData' : no appropriate default constructor available    d:\...\request handler.h

RK>>


S>Ну так у тебя там наверное в классе cRequest есть члены типа cRequestData? А у cRequestData отсутствует конструктор по умолчанию?



Черт. Спасибо. Пара закрывать студию ((
Re: оффтоп
От: alzt  
Дата: 11.09.09 14:32
Оценка: +1
Здравствуйте, R1K0, Вы писали:

Не хорошо использовать имена, начинающиеся с подчёркивания.
Re[2]: оффтоп
От: quodum  
Дата: 14.09.09 07:37
Оценка:
Здравствуйте, alzt, Вы писали:

A>Не хорошо использовать имена, начинающиеся с подчёркивания.


В таком виде (_socket), вроде как, можно. Нельзя -- с подчёркивания и заглавной буквы (_Socket было бы нельзя). Или я путаю?
Re[3]: оффтоп
От: mefrill Россия  
Дата: 14.09.09 08:36
Оценка: 4 (1)
Здравствуйте, quodum, Вы писали:

Q>Здравствуйте, alzt, Вы писали:


A>>Не хорошо использовать имена, начинающиеся с подчёркивания.


Q>В таком виде (_socket), вроде как, можно. Нельзя -- с подчёркивания и заглавной буквы (_Socket было бы нельзя). Или я путаю?


С подчеркивания и заглавной (или с двух подчеркиваний) нельзя везде, а с подчеркивания -- в глобальном пространстве имен.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.