Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

31.07.2009, 20:17
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме: 1354067
Репутация:
599
|
|
razb
это мягко говоря через жопу =) главная трабла что по сути ты аналог синглетона делать задумал. т.е. приватить надо не только дефолтный конструктор. еще копирования и перегрузку оператора =. Что не есть очень удобно и красиво.
|
|
|

31.07.2009, 20:20
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
Провел на форуме: 233095
Репутация:
21
|
|
razb, я прочитал не отредактированный вариант твоего сообщения, когда свой написал - твой пост уже был обновлен =)
Я еще не дочитал до дружественных отношений классов...
Ra$cal, ща попробую.
|
|
|

31.07.2009, 20:26
|
|
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме: 2868783
Репутация:
414
|
|
это мягко говоря через жопу =) главная трабла что по сути ты аналог синглетона делать задумал. т.е. приватить надо не только дефолтный конструктор. еще копирования и перегрузку оператора =. Что не есть очень удобно и красиво.
По поводу удобства еще можно поспорить если классы очень объемные то удобней разнести по разным файлам и обьявить такую связь.
Также если данный класс используется не только одним другим классом например.
т.е. приватить надо не только дефолтный конструктор. еще копирования и перегрузку оператора =.
Я думаю не составит особого труда сделать и это )
|
|
|

31.07.2009, 20:47
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
Провел на форуме: 233095
Репутация:
21
|
|
Ra$cal, помогло, еще раз спасибо!
З.Ы. я сначала сделал не совсем так как ты написал и мучался долго с ошибками, потом обратил внимание, что private объявлен раньше public. Переделал и помогло! Не думал что это может как-то повлиять
З.Ы.Ы. Еще никогда у мну не было таких конструкций:
Код:
LIST::DATA* LIST::DATA::GetPrev()
и
LIST::DATA::DATA(int* aValue, char* aText, DATA* aPrev, int num)
Круто)
|
|
|

31.07.2009, 20:53
|
|
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме: 2868783
Репутация:
414
|
|
З.Ы.Ы. Еще никогда у мну не было таких конструкций:
Лучше б их по возможности и не было (делай typedef'ы) или было как можно меньше ))
Код должен быть понятным с первого взгляда )
|
|
|

31.07.2009, 21:03
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме: 1354067
Репутация:
599
|
|
ну или добавляй using namespace =)
|
|
|

31.07.2009, 21:25
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
Провел на форуме: 233095
Репутация:
21
|
|
Хм, а это идея! typedef умею юзать, а вот как добавить в пространство имен мой вариант?
|
|
|

31.07.2009, 22:27
|
|
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме: 1354067
Репутация:
599
|
|
не, с классами не получится создавать альясы через namespace. как вариант можешь писать код класса DATA прямо в хидере =) ну или тайпдефы\дефайны.
|
|
|

31.07.2009, 23:09
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
Провел на форуме: 233095
Репутация:
21
|
|
ясно, еще раз спасибо)
|
|
|

01.08.2009, 15:21
|
|
Новичок
Регистрация: 03.05.2009
Сообщений: 7
Провел на форуме: 102906
Репутация:
-14
|
|
Как создать программу(.exe) исли у тебя есть входной файл
#include <iostream.h>
int main(){
int a, b, res;
char op;
cout << "\nВведите 1й операнд :"; cin >> a;
cout << "\nВведите знак операции : "; cin >> op
cout << "\nВведите 2й операнд : "; cin >> b
bool f = true;
switch (op){
case '+' : res = a + b; break;
case '-' : res = a - b; break;
case '*' : res = a * b; break;
case '/' : res = a / b; break;
default : cout <<"\nНеизвестная операция"; f = false;
}
if (f) cout << "\nРезультат : " << res;
return 0
}
---вот это ! как?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|