Форум программистов, компьютерный форум CyberForum.ru

классы, что пишется перед точкой с запятой? - C++

Восстановить пароль Регистрация
 
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
11.02.2013, 01:27     классы, что пишется перед точкой с запятой? #1
C++
1
2
3
4
5
class example
{
...
}//перед точкой с запятой иногда что-то пишут, какие-то переменные, что они значат?
...;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
11.02.2013, 01:30     классы, что пишется перед точкой с запятой? #2
это означает, что объявлена переменная типа example. но вы так лучше не делайте.
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
11.02.2013, 01:32  [ТС]     классы, что пишется перед точкой с запятой? #3
Цитата Сообщение от DU Посмотреть сообщение
это означает, что объявлена переменная типа example. но вы так лучше не делайте.
я знаю что такое классы, ооп, даже не давно "узнал" что такое полиморфизм

я спросил что пишется после фигурных скобок, и до точки с запятой.
где-то в каких-то примерах я видел там перечислялось что-то.

если я туплю, то зачем тогда там точка с запятой? для удобства исключается, ибо интерпретатор смог бы различить функцию и класс, по ключевому слову
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,048
11.02.2013, 01:38     классы, что пишется перед точкой с запятой? #4
Цитата Сообщение от Tiva Посмотреть сообщение
я спросил что пишется после фигурных скобок, и до точки с запятой.
где-то в каких-то примерах я видел там перечислялось что-то.
тебе же сказали
Цитата Сообщение от DU Посмотреть сообщение
это означает, что объявлена переменная типа example.
например
C++
1
2
3
4
class example
{
...
}A;
можно написать так
C++
1
2
3
4
5
class example
{
...
};
example A;
и если хочешь конкретно узнать что написано приводи конкретный код
а не так я где то видел что пишут так
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
11.02.2013, 02:56     классы, что пишется перед точкой с запятой? #5
Цитата Сообщение от Tiva Посмотреть сообщение
если я туплю, то зачем тогда там точка с запятой? для удобства исключается, ибо интерпретатор смог бы различить функцию и класс, по ключевому слову
А ещё он мог бы различать описания членов класса с полными именами и функций, возвращающих полностью специфицированный тип. И точно знать, что означает звёздочка. И ещё много чего мог бы различать, если бы не то жуткое наслоение решений, которое называется синтаксисом Си++.

Придётся привыкнуть к тому, что он иногда выглядит ужасно и нелогично.
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6172 / 2901 / 284
Регистрация: 04.12.2011
Сообщений: 7,714
Записей в блоге: 3
11.02.2013, 04:11     классы, что пишется перед точкой с запятой? #6
Собственно всё в коде. В литературе переход от С к С++ описан достаточно подробно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
using namespace std;
 
struct {//тут вообще нет имени типа, вся надпись (тег) от слова structure и до имени переменной и есть описание типа
int a;
int b;
float c;
} myStructVar = { 1, 2, 3.0f};//Одна переменная описанная тегом описания типа (все что до имени переменной)
 
//путём использования ключевого слова typedef для тега структуры в "C" можно определить синоним:
typedef struct MySructure{//в "C++" typedef можно не писать
int a;
int b;
float c;
};//это нормальный оператор и точка с запятой обязательна
 
struct MineSructure{//без typedef 
int a;
int b;
float c;
}A= {7, 8, 9.0f};//используя тег можем в старом стиле объявить и определить экземпляр
//Хотя можно бы было уже и MineSructure A; написать, но по смыслу тег это оператор и точка
//с запятой обязательна. Классы вводились так, чтобы облегчить переход от структур "C" и 
//синтаксис сохранился
int main()
{
cout << "myStructVar.a = " <<myStructVar.a<<endl;
cout << "myStructVar.b = " <<myStructVar.b<<endl;
cout << "myStructVar.c = " <<myStructVar.c<<endl;
 
MySructure MyStructVar = { 4, 5, 6.0f};
 
cout << "MyStructVar.a = " <<MyStructVar.a<<endl;
cout << "MyStructVar.b = " <<MyStructVar.b<<endl;
cout << "MyStructVar.c = " <<MyStructVar.c<<endl;
 
cout << "A.a = " <<A.a<<endl;
cout << "A.b = " <<A.b<<endl;
cout << "A.c = " <<A.c<<endl;
 
cout<<endl;
system("pause");
return 0;
}
Но ведь обилие синтаксических вариантов, ни кого ни к чему не обязывает. Старые формы можно и не использовать.
Yandex
Объявления
11.02.2013, 04:11     классы, что пишется перед точкой с запятой?
Ответ Создать тему
Опции темы

Текущее время: 18:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru