HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[C# | quest | find errors] Интеграция языков
  #1  
Старый 09.01.2010, 21:30
dober.man
Banned
Регистрация: 09.12.2009
Сообщений: 7
С нами: 8642658

Репутация: 35
По умолчанию [C# | quest | find errors] Интеграция языков

Всем пишущим под dotNET должно быть известно, что CLR обеспечивает интеграцию языков и позволяет объектам, созданным на одном языке, быть «равноправными гражданами» кода, написанного на другом. Такая интеграция возможна благодаря стандартному набору типов, информации, описывающей тип (метаданным), и общей среде выполнения CLR.

Вот небольшое задание (просьба постить ответы без использования компилятора)
Какие ошибки выдаст компилятор C# при выполнении следующего кода:
Код:
using System; 
[assembly: CLSCompliant(true)] 
namespace SomeLibrary 
{ 
	public sealed class SomeLibraryType 
	{ 
		public UInt32 Abc() { return 0; } 
		public void abc() { } 
		private UInt32 ABC() { return 0; } 
	}
}
 
Ответить с цитированием

  #2  
Старый 10.01.2010, 00:45
Algol
Регистрация: 29.05.2002
Сообщений: 1,794
С нами: 12604706

Репутация: 0


По умолчанию

UInt32 - не совместим с CLS
 
Ответить с цитированием

  #3  
Старый 10.01.2010, 01:08
Ra$cal
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
С нами: 10386906

Репутация: 599


По умолчанию

имена методов строчными и прописными буквами не прокатят. посерьезнее должны отличаться
 
Ответить с цитированием

  #4  
Старый 10.01.2010, 01:20
dober.man
Banned
Регистрация: 09.12.2009
Сообщений: 7
С нами: 8642658

Репутация: 35
По умолчанию

Цитата:
Сообщение от Algol  
UInt32 - не совместим с CLS
Не совсем так, но почти! =)
Поясню:
Тут во многом идет сравнение с другими языками. CLS описывает минимальный набор возможностей, который должны реализовать производители компиляторов, чтобы их продукты работали в CLR.

Первая ошибка выдается так как метод Abc возвращает целочисленное значение без знака, a, скажем, Visual Basic не может работать с такими значениями.

upd:

Цитата:
Сообщение от Ra$cal  
имена методов строчными и прописными буквами не прокатят. посерьезнее должны отличаться
Верно!
Тот же Visual Basic не сможет вызвать оба эти метода, т.к. мешают регистр букв в названии метода и возвращаемый тип.

Последний раз редактировалось dober.man; 10.01.2010 в 01:24..
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
народ помогите с апачем XopoIII Для Администратора 5 28.07.2009 10:18



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.