Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.08.2009, 12:49   #1
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию Неоднозначности с модулями

Имеется следующий код:
Код:
program UnitsTests1;
{$APPTYPE CONSOLE}
{$o-}
uses
  UnitsTests1_1 in 'UnitsTests1_1.pas',
  UnitsTests1_2 in 'UnitsTests1_2.pas';

var
   a : integer;

begin
   a := 1;
   UnitsTests1_1.a := 2;
   b := 3;//почему этот код не вызывает ошибки?
   UnitsTests1_2.b := 5;
   UnitsTests1_1.b := 4;
end.


unit UnitsTests1_1;

interface

var
   a, b : integer;

implementation

initialization
   b := 0;

end.


unit UnitsTests1_2;

interface

var
   b : integer;

implementation

end.
Собственно, вопрос: почему этот код не вызывает ошибки? Разве не должна возникнуть неоднозначность с использованием переменной b?
megachuhancer вне форума Ответить с цитированием
Старый 13.08.2009, 13:01   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

А потому что по умолчанию переменные берутся либо из текушего либо из последнего в списке uses.
В данном случае строка
Код:
b := 3;//почему этот код не вызывает ошибки?
Эквивалентна
Код:
 UnitsTests1_2.b := 3;
Поменяй местами
Код:
uses
  UnitsTests1_2 in 'UnitsTests1_2.pas',
  UnitsTests1_1 in 'UnitsTests1_1.pas';
и b:=3 будет использоваться из UnitsTests1_1
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.08.2009, 14:30   #3
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Спасибо.__
megachuhancer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите написать программу в Pascal c модулями ...Dreamer... Помощь студентам 2 07.05.2009 13:58
Общий вопрос с модулями! Манжосов Денис :) Общие вопросы Delphi 2 27.04.2008 19:58
Проблема с модулями и дин.структурами данных velgelmina Помощь студентам 1 16.05.2007 06:43