Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];

Вниз

возникли сомнения!   Найти похожие ветки 

 
ReWQ   (2006-10-21 16:46) [0]

Ведь это одно и тоже!?
k: longint=0;
и
в теле программы
...
k:=0;
...
Верно?
А как делаете вы?


 
antonn ©   (2006-10-21 16:50) [1]

в Д7 у меня не получается k: longint=0;, ругается...
хотя исходники с Д5 и там компились...
=> делаю №2


 
Sergey Masloff   (2006-10-21 16:51) [2]

Это далеко не одно и то же. Мы делаем по-разному в зависимости от того что мы хотим.


 
Loginov Dmitry ©   (2006-10-21 16:52) [3]

Если переменная глобальная или является полем класса, то она инициализируется автоматически. Поэтому просто

k: longint

Если переменная (числовая) локальная то ее нужно инициализировать вручную.

var
 k: longint;
begin
 k := 0;


 
TUser ©   (2006-10-21 16:53) [4]

Нет. Строка k := 0 может выполняться
(а) много раз
(б) после некоторых действий уже произведенных со значением к
(в) никогда

В многопоточном приложении могут быть серьезные различия.

Кроме того, первый синтаксис FreePascal не кушает почему-то.


 
Sergey Masloff   (2006-10-21 16:54) [5]

Loginov Dmitry ©   (21.10.06 16:52) [3]
>k: longint=0;
Где тут  ПЕРЕМЕННЫЕ?


 
Sergey Masloff   (2006-10-21 16:57) [6]

или это метод слона? Когда на экзамене вытаскиваешь билет про слона а знаешь только про червяка. И начинаешь "слон это большое животное у него есть хобот который поход на червяка. А червяк..." и дальше вываливаешь все что знаешь? ;-))


 
TUser ©   (2006-10-21 16:57) [7]

> Sergey Masloff   (21.10.06 16:54) [5]

А что?

var k: longint = 0;

В Турбо Паскале так нельзя было, кажется (???), но в Д7 - пожалуйста.


 
Sergey Masloff   (2006-10-21 17:01) [8]

TUser ©   (21.10.06 16:57) [7]
А это не переменные а типизированные константы. Которые конечно можно при соотв. ключике сделать assignable но они остаются константами. Мы же профессионалы и должны говорить на одном языке. А его нам определяет документация.


 
Sergey Masloff   (2006-10-21 17:03) [9]

Впрочем, у меня и Delphi то под рукой нет. Неужто можно написать
var k: longint = 0;
?
не const ли вместо var?


 
Sergey Masloff   (2006-10-21 17:04) [10]

Хотя... наверное для глобальных можно. Посыпаю голову пеплом ;-)))


 
TUser ©   (2006-10-21 17:07) [11]

Можно. Я собственно проверил перед тем, как запостить. Было бы const - была бы константа. Переменная - не локальная, конечно.


 
Ученик чародея ©   (2006-10-21 17:08) [12]


> Sergey Masloff   (21.10.06 17:01) [8]
>
> TUser ©   (21.10.06 16:57) [7]
> А это не переменные а типизированные константы. Которые
> конечно можно при соотв. ключике сделать assignable но они
> остаются константами. Мы же профессионалы и должны говорить
> на одном языке. А его нам определяет документация.


Они вроде бы еще статические, тоесть позволяют эмулировать отсутствие в Паскале статических классовых переменных. В D2006 их можно и прямо в полях класса объявлять.


 
default ©   (2006-10-21 17:18) [13]


> Они вроде бы еще статические, тоесть позволяют эмулировать
> отсутствие в Паскале статических классовых переменных. В
> D2006 их можно и прямо в полях класса объявлять.


записи наподобие(C#) private String Location = "location";
не определяют статической переменной
статические это когда с const или static объявлено


 
Anatoly Podgoretsky ©   (2006-10-21 17:21) [14]

Вопрос не полный


 
Чапаев ©   (2006-10-21 18:10) [15]

> [8] Sergey Masloff   (21.10.06 17:01)
Это они в Паскале "типизированными константами" были.


 
Джо ©   (2006-10-21 18:26) [16]

> [15] Чапаев ©   (21.10.06 18:10)
> > [8] Sergey Masloff   (21.10.06 17:01)
> Это они в Паскале "типизированными константами" были.

Типизированная константа это
const
 I: Integer = 0;
А это
var
 I: Integer = 0;
это переменная инициализированная значением. Разумеется, допустима там, где она допустима по синтаксису :)


 
Eraser ©   (2006-10-21 18:35) [17]

> [11] TUser ©   (21.10.06 17:07)


> Переменная - не локальная, конечно.

жаль что локальные нельзя.. очень часто этого не хватает + раздутие кода.


 
Ученик чародея ©   (2006-10-21 19:00) [18]


> default ©   (21.10.06 17:18) [13]
>
>
> > Они вроде бы еще статические, тоесть позволяют эмулировать
> > отсутствие в Паскале статических классовых переменных.
>  В
> > D2006 их можно и прямо в полях класса объявлять.
>
> записи наподобие(C#) private String Location = "location";
>
> не определяют статической переменной
> статические это когда с const или static объявлено


В Delphi  появились static переменные? Когда?

Пока приходилось извращатся через типизированные константы.


 
Джо ©   (2006-10-21 19:07) [19]

> [18] Ученик чародея ©   (21.10.06 19:00)
> В Delphi  появились static переменные? Когда?

Статических переменных нет. Появились статические поля классов в D2006.


 
Ученик чародея ©   (2006-10-21 19:10) [20]


> Джо ©   (21.10.06 19:07) [19]
>
> > [18] Ученик чародея ©   (21.10.06 19:00)
> > В Delphi  появились static переменные? Когда?
>
> Статических переменных нет. Появились статические поля классов
> в D2006.


А у нас D7, так что их нет!


 
Marser ©   (2006-10-21 20:00) [21]

В D4 появилась такая возможность...


 
Marser ©   (2006-10-21 20:00) [22]

В смысле, инициализация при объявлении.


 
Джо ©   (2006-10-21 20:05) [23]

> [20] Ученик чародея ©   (21.10.06 19:10)
> А у нас D7, так что их нет!

Ну, ты же спрашивал "Когда?"...


 
ReWQ   (2006-10-21 22:11) [24]

Ну так что, ребят!?


 
Сержик   (2006-10-21 22:15) [25]

Моя токча зрения следующая я беру клавиатуру и печатаю заданный алгоритм а k: longint=0; и  k:=0 это просто как дважды два!


 
default ©   (2006-10-21 22:32) [26]

ReWQ   (21.10.06 22:11) [24]
не бери в голову


 
Loginov Dmitry ©   (2006-10-21 23:45) [27]

Sergey Masloff   (21.10.06 16:57) [6]
или это метод слона? Когда на экзамене вытаскиваешь билет про слона а знаешь только про червяка. И начинаешь "слон это большое животное у него есть хобот который поход на червяка. А червяк..." и дальше вываливаешь все что знаешь?


Sergey Masloff   (21.10.06 17:04) [10]
Посыпаю голову пеплом


:)))))



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.036 c
15-1161777967
novice_man
2006-10-25 16:06
2006.11.12
Поиск нормативных документов.


1-1159685728
apic
2006-10-01 10:55
2006.11.12
Переопределение события.


1-1158760891
JohnnyRaw
2006-09-20 18:01
2006.11.12
Проблема с утечкой памяти (использую MemProof)


15-1161927720
clickmaker
2006-10-27 09:42
2006.11.12
Пятничные загадки


15-1161632618
Bibikanov_Andrea
2006-10-23 23:43
2006.11.12
Футболки для корпоративной команды





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский