КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Сцепление
Строки Функции-члены структуры Структуры можно сделать весьма эффективными, если включить функции-члены в их определение. Такие функции-члены действуют аналогично обычным функциям, за исключением того что они имеют доступ к данным-членам структуры. Вновь обратившись к примеру описания человека, можно ввести функцию-член, которая возвращает значение высоты человека в сантиметрах, а не в дюймах, например: structPerson ( name, age, height, weight, function GetHeight CM = ( cmheight = height* 2.54 ) ) В данной функции исходная высота умножается на переводной коэффициент, и затем возвращается новое значение. Используя эту новую функцию, можно написать следующий код: myPerson = Person "Sue" height: 60 cmh = myPerson.GetHeightCM() Если затем ввести переменную cmh в окне приемника команд и вычислить ее значение, то в итоге будет получен следующий результат: 152.4. Вызов функций во время построения структуры (дополнительный материал) При рассмотрении процесса построения структуры речь до сих пор шла лишь о присвоении копий аргументов переменным-членам. А другой код при этом не инициализировался. Но что если требуется вызвать иной код для манипулирования данными при создании структуры? Для этого достаточно присвоить функцию переменной-члену в определении структуры, например: struct Person ( name, age, height, weight, function GetHeightCM = ( height* 2.54 ), cmHeight = GetHeightCM() ) Обратите внимание на новую переменную-член cmHeight, введенную в структуру. В этой переменной будет храниться значение высоты человека в сантиметрах. Любая функция-член, присваиваемая переменной-члену, вызывается при Глава 1 построении структуры. Если продолжить рассматриваемый здесь пример описания человека, то можно было бы написать myPerson = Person "Carol" height:60, а затем ввести в окне приемника команд следующую переменную и вычислить ее значение: myPerson.cmHeight В ответ на это, как и ожидалось, будет получено значение 152.4. При построении структуры можно вызвать не одну, а несколько функций. Например, в структуру можно ввести переменную-член, которая содержит вес человека в килограммах, а не в фунтах: struct Person ( name, age, height, weight, function GetHeightCM = ( height * 2.54 ), function GetWeightKG = ( weight * 2.2 ), cmHeight = GetHeightCM(), kgWeight = GetWeightKG() ) Вызов функций во время создания структуры является весьма эффективным средством MAXScript. Строковые переменные содержат буквенно-цифровые символы или текст, например "Hello", "MAX4U" или "Введите ваше имя". Строки представляют собой литеральные значения, которые могут использоваться во всплывающих сообщениях или при указании пути к файлу. Строки присваиваются строковым переменным с помощью кавычек. Если не снабдить строку кавычками, это приведет к ошибке. В MAXScript предоставляется целый ряд операций, которые можно выполнять над строками. Сцепление означает объединение двух строк с помощью знака "плюс" (+). Это аналогично сложению двух строк для получения третьей: textl = "MAXScriptis" text2 = " fun!" text3 = textl + text2 В приведенном выше примере переменная text3 будет иметь значение "MAXScriptisfun!" (MAXScript — интересный язык программирования!). Основы MAXScript Обратите внимание на пробел в начале строки text2, который введен для правильного чтения строки. В строке пробел считается отдельным символом. Для просмотра строки служит функция messageBox: messagebox text3 На приведенном ниже рисунке показан результат выполнения представленного выше сценария. В окне приемника команд выводятся результаты присваивания значений строковым переменным после выполнения каждой строки данного сценария.
Дата добавления: 2014-10-15; Просмотров: 476; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |