Войти
ФлеймФорумПрограммирование

Нубовопросы по С++ (2 стр)

Страницы: 1 2 3 410 Следующая »
#15
0:18, 5 дек. 2012

Chaos_Optima
> что и всё ж? он всё правильно сказал херня хернёй, неверишь посмотри асм выхлоп
  А ты сам проверял?


#16
0:24, 5 дек. 2012

Kartonagnick
> Модификатор доступа не является определением "наследования"
struct B: private A{};

#17
0:33, 5 дек. 2012

kipar
> struct B: private A{};

и чо?

#18
0:38, 5 дек. 2012

Kartonagnick
> херня.
  Доверяй, но проверяй.

#19
0:47, 5 дек. 2012

Kartonagnick
Т.е. можно и для структур делать приват наследование. А по умолчанию оно паблик. Что и требовалось доказать.

#20
2:30, 5 дек. 2012

А нормально почем зря в коде использовать

vector<GameObject*>* list;
?

Ну вроде аналога

 ArrayList<GameObject> al = new ArrayList<GameObject>();
.

Ну всмысле нормально ли все время использывать указатели на коллекции указателей? Так все делают?

#21
9:41, 5 дек. 2012

AvrDragon
Если это решает задачу, то да. Например, нужно чтобы ArrayList создавался в одном месте, отдавался в другое и хранился в третьем - тогда придется использовать указатели.

Но в таких случаях я использую не голые указатели, а shared_ptr

using namespace std;
shared_ptr<vector<shared_ptr<GameObject>>> list;

Если вместо указателей можно использовать ссылки - тогда нужно использовать ссылки.

#22
11:15, 5 дек. 2012

kipar
> Т.е. можно и для структур делать приват наследование. А по умолчанию оно
> паблик. Что и требовалось доказать.

Ты все это время пытался доказать, что для структур можно сделать приватное наследование? И что по умолчанию оно паблик?

#23
16:29, 22 дек. 2012

Перечитываю Страуструпа. Наткнулся на абзац:

Память под строковые литералы выделяется статически, поэтому их возврат из функций безопасен. Например:
const char* error_message (int i)
{
return "range error" ;
}
Память, содержащая строку "range error", никуда не денется после выходя из функции error_message ().

И внезапно впал в ступор :-/

Что означает "статически"? Каков срок жизни?

А если я напишу так:

const char* error_message (int i) 
{ 
char *ch = "range error";
return  ch; 
} 
это работать уже не будет (по стандарту а не компилятору)?

#24
16:41, 22 дек. 2012

war_zes
> это работать уже не будет (по стандарту а не компилятору)?
будет, это тоже что и:

static const char* r_error = "range error";

const char* error_message (int i) 
{ 
const char *ch = r_error;
return  ch; 
} 
#25
17:50, 22 дек. 2012

war_zes
> Что означает "статически"?
Объект живет в статической памяти

war_zes
Каков срок жизни?

Время жизни всего процесса.

#26
22:27, 22 дек. 2012

war_zes
> И внезапно впал в ступор :-/
> Что означает "статически"? Каков срок жизни?
  Для того, чтобы избегать подобных болезненных
состояний и поиска ответов на дурацкие вопросы,
рекомендую держать все эти ООП-ешные штучки
подальше от основного кода и использовать их
только на свой страх и риск.

А для себя я уже сформулировал эмпирическое правило:
"Чем меньше ООП в проекте, тем лучше."

#27
23:05, 22 дек. 2012

RenGD
> Для того, чтобы избегать подобных болезненных
> состояний и поиска ответов на дурацкие вопросы,
> рекомендую держать все эти ООП-ешные штучки
> подальше от основного кода и использовать их
> только на свой страх и риск.
> А для себя я уже сформулировал эмпирическ
лол причём тут ооп

#28
0:08, 23 дек. 2012

RenGD
> А для себя я уже сформулировал эмпирическое правило:
> "Чем меньше ООП в проекте, тем лучше."

Очень спорный вопрос

#29
5:38, 23 дек. 2012
"Чем меньше ООП в проекте, тем лучше."

Программировать вообще вредно для здоровья. Держитесь от компа подальше.
Страницы: 1 2 3 410 Следующая »
ФлеймФорумПрограммирование

Тема в архиве.