Классы структуры и.т.п а зачем??
От: Buggy  
Дата: 19.05.03 06:44
Оценка: -1 :)
Народ мне нужна ваша помощь.
Я не пойму почему некоторые используют классы для реализации там в своей программе,
некоторые struct и.т.п.
Зачем все это нужно когда можно обойтись простой функцией??
Просто я не понимаю разницы между этим всем и в чем + и в чем — каждого этого метода.
Помогите мне.


20.05.03 18:43: Перенесено модератором из 'WIN API' в Философию. Авансом, глядишь, принесёт прибыль — ХД
Re: Классы структуры и.т.п а зачем??
От: Willi Интернет  
Дата: 19.05.03 08:11
Оценка:
Здравствуйте, Buggy, Вы писали:

B>Народ мне нужна ваша помощь.

B>Я не пойму почему некоторые используют классы для реализации там в своей программе,
B>некоторые struct и.т.п.
B>Зачем все это нужно когда можно обойтись простой функцией??
B>Просто я не понимаю разницы между этим всем и в чем + и в чем — каждого этого метода.
B>Помогите мне.

А ты попробуй написать серьезный проект на чистом C без использования структур. Или даже со структурами, но на C, т.е. без классов.

А потом поробуй спректировать и ерархию классов и написать тоже самое на C++.

Сразу пропадут подобные вопросы.

ООП позволяет оптимальнее строить логические связи между частями программы. Разбивать программы на логические части слабо связанные между собой. В общем надо писать и сравнивать, тогда поймешь.

Хотя есть люди, которые придерживаются мнения, что на C можно делать ошибки, а на C++ их наследовать. Остроумное замечание, но я с ним категорически не согласен.
__________________________________
Василий Черневич (aka Willi)
Re[2]: Классы структуры и.т.п а зачем??
От: WFrag США  
Дата: 20.05.03 15:43
Оценка:
Здравствуйте, Willi, Вы писали:

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


B>>Народ мне нужна ваша помощь.

B>>Я не пойму почему некоторые используют классы для реализации там в своей программе,
B>>некоторые struct и.т.п.
B>>Зачем все это нужно когда можно обойтись простой функцией??
B>>Просто я не понимаю разницы между этим всем и в чем + и в чем — каждого этого метода.
B>>Помогите мне.

W>А ты попробуй написать серьезный проект на чистом C без использования структур. Или даже со структурами, но на C, т.е. без классов.


W>А потом поробуй спректировать и ерархию классов и написать тоже самое на C++.


Поправочка: Перед этим, для полноты ощущений, рекомеендуется почитать что-нибудь по ООП, хотя бы Буча.
7. О чем невозможно говорить, о том следует молчать.
Re: Классы структуры и.т.п а зачем??
От: Kluev  
Дата: 21.05.03 07:17
Оценка:
Здравствуйте, Buggy, Вы писали:

B>Народ мне нужна ваша помощь.

B>Я не пойму почему некоторые используют классы для реализации там в своей программе,
B>некоторые struct и.т.п.

Ответ очень прост. Нравятся они нам.
Re: Классы структуры и.т.п а зачем??
От: Сергей Глазунов Украина  
Дата: 21.05.03 07:40
Оценка:
Здравствуйте, Buggy, Вы писали:

B>Народ мне нужна ваша помощь.

B>Я не пойму почему некоторые используют классы для реализации там в своей программе,
B>некоторые struct и.т.п.
B>Зачем все это нужно когда можно обойтись простой функцией??
B>Просто я не понимаю разницы между этим всем и в чем + и в чем — каждого этого метода.
B>Помогите мне.

Функциональное программирование - это перестановка стульев на Титанике (с)
... << RSDN@Home 1.0 beta 7a... а еще я в нее ем >>
Re[3]: Классы структуры и.т.п а зачем??
От: mihailik Украина  
Дата: 21.05.03 09:41
Оценка:
W>>А потом поробуй спректировать и ерархию классов и написать тоже самое на C++.

WF>Поправочка: Перед этим, для полноты ощущений, рекомеендуется почитать что-нибудь по ООП, хотя бы Буча.


А я бы не советовал.

Читал я одного Буча, очень утомительный и детализированный не по делу. Как организовать обсуждение, как правильно уголки у квадратиков закрашивать и т.п.
... << RSDN@Home 1.0 beta 6a >>
Re[4]: Классы структуры и.т.п а зачем??
От: orangy Россия
Дата: 21.05.03 09:52
Оценка: +2
Здравствуйте, mihailik, Вы писали:

W>>А потом поробуй спректировать и ерархию классов и написать тоже самое на C++.

WF>Поправочка: Перед этим, для полноты ощущений, рекомеендуется почитать что-нибудь по ООП, хотя бы Буча.
M>А я бы не советовал.
M>Читал я одного Буча, очень утомительный и детализированный не по делу.
А что, их много!?

M>Как организовать обсуждение, как правильно уголки у квадратиков закрашивать и т.п.

Когда я читаю таких зубров, и мне кажется что они гонят, я сначала 10 раз сомневаюсь, а не гоню ли я... И тебе советую. Буч очень много сделал для ООП, и книжки у него правильные, так что нечего тут!
... << RSDN@Home 1.0 beta 7a | Сейчас среда, 16:05, слушаю тишину >>
"Develop with pleasure!"
Re[4]: Классы структуры и.т.п а зачем??
От: WFrag США  
Дата: 21.05.03 10:14
Оценка:
Здравствуйте, mihailik, Вы писали:

W>>>А потом поробуй спректировать и ерархию классов и написать тоже самое на C++.


WF>>Поправочка: Перед этим, для полноты ощущений, рекомеендуется почитать что-нибудь по ООП, хотя бы Буча.


M>А я бы не советовал.


M>Читал я одного Буча, очень утомительный и детализированный не по делу. Как организовать обсуждение, как правильно уголки у квадратиков закрашивать и т.п.



Во-первых, я согласен с orangy
Во-вторых, я имел ввиду, что без понимания ООП к классам лучше и не подходить.
7. О чем невозможно говорить, о том следует молчать.
Re[5]: Классы структуры и.т.п а зачем??
От: mihailik Украина  
Дата: 21.05.03 10:22
Оценка:
M>>Как организовать обсуждение, как правильно уголки у квадратиков закрашивать и т.п.

O>Когда я читаю таких зубров, и мне кажется что они гонят, я сначала 10 раз сомневаюсь, а не гоню ли я... И тебе советую. Буч очень много сделал для ООП, и книжки у него правильные, так что нечего тут!


Может и так. А может его научные заслуги и не имеют отношения к литературе. Во всяком случае, у меня сложилось мнение, что, при всей его гениальности, книги у него получаются не очень.
... << RSDN@Home 1.0 beta 6a >>
Re[5]: Классы структуры и.т.п а зачем??
От: mihailik Украина  
Дата: 21.05.03 10:22
Оценка:
WF>Во-вторых, я имел ввиду, что без понимания ООП к классам лучше и не подходить.

Это да. Но книжки у Буча толстые, по ним начинающему учиться неоптимально. Как мне кажется.

Я по опыту заметил, что учиться лучше всего "по-быстрому". Сел, начал, подправил, подчитал ещё пару глав. И тексты должны быть чёткие, ёмкие, лаконичные. У Буча я таких не встретил.
... << RSDN@Home 1.0 beta 6a >>
Re: Классы структуры и.т.п а зачем??
От: FlashBack  
Дата: 26.05.03 17:31
Оценка:
Здравствуйте, Buggy, Вы писали:

B>Зачем все это нужно когда можно обойтись простой функцией??


Зачем, за чем...

За шкафом конечно...

Дело вкуса. Я напричер классы не уважаю, а структуры обажаю
Re[2]: Классы структуры и.т.п а зачем??
От: Lloyd Россия  
Дата: 26.05.03 17:34
Оценка:
Здравствуйте, FlashBack, Вы писали:

FB>Зачем, за чем...


FB>За шкафом конечно...


FB>Дело вкуса. Я напричер классы не уважаю, а структуры обажаю


What's the difference?
Re[3]: Классы структуры и.т.п а зачем??
От: FlashBack  
Дата: 26.05.03 17:36
Оценка: -4
Здравствуйте, Lloyd, Вы писали:

L>What's the difference?


Очень даже difference...

У классов есть наследование, размножение, вырастание, доращивание ....
А структуры бездетные
Re[4]: Классы структуры и.т.п а зачем??
От: Lloyd Россия  
Дата: 26.05.03 17:56
Оценка:
Здравствуйте, FlashBack, Вы писали:

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


L>>What's the difference?


FB>Очень даже difference...


FB>У классов есть наследование, размножение, вырастание, доращивание ....

FB>А структуры бездетные

размножение, вырастание, доращивание -- что такое не знаю, вощможно действительно есть.
Но вот по поводу наследования -- нажется мне, что кто-то из нас ошибается.


struct A{
public:
    virtual void print(){
        printf("struct A");
    }
};

struct B: A{
public:
    void print(){
        printf("struct B");
    }
};

int _tmain(int argc, _TCHAR* argv[])
{
    A* a = new B();
    a->print();
    return 0;
}
Re[5]: Классы структуры и.т.п а зачем??
От: FlashBack  
Дата: 26.05.03 19:35
Оценка:
Здравствуйте, Lloyd, Вы писали:



L>размножение, вырастание, доращивание -- что такое не знаю, вощможно действительно есть.

L>Но вот по поводу наследования -- нажется мне, что кто-то из нас ошибается.


L>
L>struct A{
L>public:
L>    virtual void print(){
L>        printf("struct A");
L>    }
L>};

L>struct B: A{
L>public:
L>    void print(){
L>        printf("struct B");
L>    }
L>};

L>int _tmain(int argc, _TCHAR* argv[])
L>{
L>    A* a = new B();
    a->>print();
L>    return 0;
L>}
L>


1.Это не совсем наследование
2.В существующую структуру нельзя добавить функцию
Re[6]: Классы структуры и.т.п а зачем??
От: WFrag США  
Дата: 27.05.03 01:15
Оценка: +4
Здравствуйте, FlashBack, Вы писали:

AFAIK, в C++ структура ничем от класса не отличается, кроме того, что у структуры по умолчанию все члены и наследование открытые . Это если брать семантику слова struct.
7. О чем невозможно говорить, о том следует молчать.
Re[6]: Классы структуры и.т.п а зачем??
От: adontz Грузия http://adontz.wordpress.com/
Дата: 28.05.03 00:02
Оценка:
Здравствуйте, FlashBack, Вы писали:

FB>1.Это не совсем наследование


Что значит не совсем? Определи понятие наследования — иначе нельзя продолжать разговор

FB>2.В существующую структуру нельзя добавить функцию


Функцию в любом случае нельзя добавить! Можно добавить метод унаследовав данный класс и добавив метод в дочернем классе.

Единственное различие между struct и class это доступ к членам по умолчанию

То есть в структуре по умолчанию public, в классе private

Эквивалентно

typedef struct STRUCT              typedef STRUCT
 {                                  {
  public:                        
   int field;                         int field;
  private:                           private:
   double data;                       double data;
 } * LPSTRUCT;                      } * LPSTRUCT;
//
typedef struct CClass              typedef CClass
 {                                  {
  private:                        
   int field;                         int field;
   char MethodInternal();             char MethodInternal();
  public:                           public:
   double data;                       double data;
   void MethodExternal();             void MEthodExternal();
 };                                 };
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[7]: Классы структуры и.т.п а зачем??
От: folk Россия  
Дата: 28.05.03 01:36
Оценка: :))) :)
Здравствуйте, adontz, Вы писали:

A>
A>typedef struct STRUCT              typedef STRUCT
A> {                                  {
A>  public:                        
A>   int field;                         int field;
A>  private:                           private:
A>   double data;                       double data;
A> } * LPSTRUCT;                      } * LPSTRUCT;
A>//
A>typedef struct CClass              typedef CClass
A> {                                  {
A>  private:                        
A>   int field;                         int field;
A>   char MethodInternal();             char MethodInternal();
A>  public:                           public:
A>   double data;                       double data;
A>   void MethodExternal();             void MEthodExternal();
A> };                                 };

A>


Ух ты! Когда треды внесут в Стандарт, исходник мультитредовой программы будет выглядеть именно так.
На самом деле, люди не читают газеты, они принимают их каждое утро, так же как ванну. ©Маршалл Мак-Льюэн
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.