| |||||||
Программирование Создание, разработка и доработка различных игр и программного обеспечения |
|
|
Опции темы |
02.10.2010, 14:06 | #1 | ||
Пугатель
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,105
Репутация: 1085
|
C#
C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков C++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++). Особенности языка: Скрытый текст: Последний раз редактировалось Kentаvr; 02.10.2010 в 14:43. |
||
|
02.10.2010, 14:46 | #2 | ||
You, yes you!
Регистрация: 22.04.2007
Адрес: ۞_۞
Сообщений: 7,069
Репутация: 1595
|
По памяти отмечу, что наш усатый на первом-втором курсе из литературы особо напирал на Гради Буча, Эндрю Троелсена и Г. Шильда. Если кому нужно, второго могу и залить.
|
||
|
03.10.2010, 11:19 | #3 | ||
Dis is one half
Регистрация: 19.10.2007
Адрес: Санкт-Петербург
Сообщений: 1,460
Репутация: 304
|
Просветите меня, как обрабатывать xml?
Есть у меня такой xml: Код:
<?xml version="1.0" encoding="UTF-8"?> <Model xmlns="http://www.esi-group.com/ns/VAOne" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.esi-group.com/ns/VAOne http://www.esi-us-rd.com/xml/schemas/VAOne/rev2/VAOne.xsd" name="Cube" note=""> <Version>1.1.0</Version> <GlobalFrequencyDomain> <FrequencyDomain start_freq="16" end_freq="8000" domain_type="2"/> </GlobalFrequencyDomain> <SolveOptions override_wavefields="false" beam_flexure_x="true" beam_flexure_y="true" beam_extension="true" beam_torsion="true" plate_extension="true" plate_flexure="true" plate_shear="true" average_radeff="false" symmetric_SEA_matrix="true" acoustic_pressure="true" compute_variance="false" solution_type="eHybrid" hybrid_quick="false" hybrid_quicknum="6" vsea_steps="20" override_eigen_frequencies="false" eigenlocallow="-5" eigenlocalhi="17826" eigengloballow="-5" eigenglobalhi="10695.6" local_mass="true" local_modes="false" modes="true" override_local_eigen_frequencies="false" override_global_eigen_frequencies="false" superelement_analysis="false" senqset="500" recover_fe_rad_eff="true" recover_nodal_eu="true" overrideGlobalAcousticEigenFreqs="false" getLocalAcousticModesInBand="true" minGlobalAcousticEigenValueFreq="-5" maxGlobalAcousticEigenValueFreq="10695.6" getAcousticModes="true" recoverBEM="true" overrideFEAcousticJunctionEps="false" feacousticJunctionEps="1e-006" recoverFEAcoustic="true"> <BulkDataCards/> <ControlCards/> </SolveOptions> <Nodes> <Node node_id="1" x="0" y="0" z="0"/> <Node node_id="2" x="0" y="1" z="0"/> <Node node_id="3" x="1" y="0" z="0"/> <Node node_id="4" x="1" y="1" z="0"/> <Node node_id="5" x="0" y="0" z="1"/> <Node node_id="6" x="0" y="1" z="1"/> <Node node_id="7" x="1" y="0" z="1"/> <Node node_id="8" x="1" y="1" z="1"/> <Node node_id="9" x="0.2" y="0.2" z="1"/> <Node node_id="10" x="0.2" y="0.8" z="1"/> <Node node_id="11" x="0.8" y="0.2" z="1"/> ... ... Код:
public class AutoSeaModel { public XmlDocument xDoc = new XmlDocument(); public XmlElement xRoot; String fileName; public SortedDictionary<int, Node> nodes = new SortedDictionary<int, Node>(); public SortedDictionary<int, Face> faces = new SortedDictionary<int, Face>(); public SortedDictionary<String, Shell> shells = new SortedDictionary<String, Shell>(); public SortedDictionary<String, Cavity> cavities = new SortedDictionary<String, Cavity>(); public AutoSeaModel(String fileName) { this.fileName = fileName; xDoc.Load(fileName); xRoot = xDoc.DocumentElement; XmlNodeList xNodes = xDoc.SelectNodes("/Model/Nodes/Node"); foreach(XmlElement xNode in xNodes) { Node newNode = new Node(this, xNode); nodes.Add(newNode.node_id, newNode); } XmlNodeList xFaces = xDoc.SelectNodes("/Model/Faces/FlatPlateFace"); foreach (XmlElement xFace in xFaces) { ... ... По моим соображениям строка XmlNodeList xNodes = xDoc.SelectNodes("/Model/Nodes/Node"); Должна вернуть набор XmlElement'ов, каждый из которых должен соответствовать строке типа <Node node_id="1" x="0" y="0" z="0"/> Но метод SelectNodes все время возвращает мне пустой список. Что я делаю не так? Upd: Все дело оказалось в пространстве имен XML. Помогла эта статья: http://codehelper.ru/questions/102/n...ml-c-namespace Последний раз редактировалось OneHalf; 03.10.2010 в 15:14. |
||
|
22.01.2011, 20:08 | #4 | ||
Игроман
Регистрация: 26.09.2007
Сообщений: 2,425
Репутация скрыта
|
Это вроде просто, но я не знаю как. Подскажите, если не трудно.
Скрытый текст:
__________________
502 Bad Gateway
nginx0.7.6 |
||
|
31.01.2011, 01:03 | #6 | ||
Гейммастер
Регистрация: 07.06.2005
Адрес: unknow
Сообщений: 9,072
Репутация: 634
|
надо задать размер матрицы nxm, и после чего загнать в матрицу числа. Как создать матрицу я понимаю. Но как лучше заполнить матрицу, мне не совсем ясно. Вызывать каждый раз диалоговое окно и просить ввести в поле i,j элемент не вариант. Загонять из файла тоже. Возможно ли создать как-нибудь сразу таблицу, которую можно будет заполнить, после чего передать данные в массив?
__________________
Бывший Dart Luke Мечтаю быть модером и всех банить.... Но ведь не дадут ((((( "cъел еретика-спас дерево,"- оголодавший космодесант Последний раз редактировалось Mad-Dan; 24.02.2011 в 20:36. |
||
|
23.02.2011, 13:22 | #8 | ||
Юзер
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172
|
Реквестирую сюда мини срачик о том что лучше c# или Java. Заодно и мне объясните.
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey* Контактик Щебет Лицокнижка Спроси меня Гплюс |
||
|
23.02.2011, 14:10 | #9 | ||
Dis is one half
Регистрация: 19.10.2007
Адрес: Санкт-Петербург
Сообщений: 1,460
Репутация: 304
|
Жила-была Java. Microsoft обиделся, что яву придумали не они и решил сделать свою, с блек джеком и девками.
В принципе языки очень похожи даже синтаксисом (хоть я и не вникал в C# так как в яву, но это и так заметно). |
||
|
23.02.2011, 14:24 | #10 | ||
Юзер
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172
|
Получается что шарп лучше т.к. там есть блек джек и девки))
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey* Контактик Щебет Лицокнижка Спроси меня Гплюс |
||
|
23.02.2011, 15:58 | #12 | ||
Dis is one half
Регистрация: 19.10.2007
Адрес: Санкт-Петербург
Сообщений: 1,460
Репутация: 304
|
CMETAHA, основная моя мысль в том, что изучать можно любой из этих языков, а потом легко мигрировать на другой (сделать замену "import" <-> "using" ).
Единственное, чего мне хотелось бы в Java из C#, это перегрузка стандартных операторов, сеттеры и геттеры: Перегрузка операторов: Скрытый текст: сеттеры и геттеры: Скрытый текст: |
||
|
23.02.2011, 16:12 | #13 | ||
Юзер
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172
|
Hast, А как же mono?
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey* Контактик Щебет Лицокнижка Спроси меня Гплюс |
||
|
23.02.2011, 18:27 | #14 | ||
Юзер
Регистрация: 03.04.2008
Сообщений: 265
Репутация: 134
|
Смысл шарпа вообще не ясен. Заставляет таскать с собой громоздкий фреймворк, при этом не предоставляя основой и главной фичи java и jre - кроссплатформенности, и отсутствия необходимости в перекомпиляции под платформу. А при этом к тому же еще и производительность страдает. Java лучше.
По истории срачей между M$ и Sun можно тут почитать про J# и C#. Про блэкджек уже сказали выше. Цитата:
Последний раз редактировалось emptily; 23.02.2011 в 18:41. |
||
|
24.02.2011, 18:21 | #15 | ||
Юзер
Регистрация: 08.09.2007
Сообщений: 271
Репутация: 61
|
Код:
Console.WriteLine("\nОтвет: " + y); Console.WriteLine("Округлить до n чисел после запятой, введите n..."); buf = Console.ReadLine(); byte n = Convert.ToByte(buf); Console.WriteLine("\nОтвет: " + Math.Round(y, n)); } } }
__________________
"Надежда умирает последней", - сказала Вера и застрелила Любовь... |
||
|
24.02.2011, 19:41 | #17 | ||
Юзер
Регистрация: 08.09.2007
Сообщений: 271
Репутация: 61
|
OneHalf, оно вроде. Спасибо.
А не подскажите ещё как развилку сделать там же, наподобие "Округлить до n чисел после запятой? Если да - нажмите то-то, если нет то-то", при ответе нет - выходит.
__________________
"Надежда умирает последней", - сказала Вера и застрелила Любовь... Последний раз редактировалось Arantar; 24.02.2011 в 20:58. |
||
|
01.03.2011, 18:46 | #18 | |||||
Опытный игрок
Регистрация: 08.09.2006
Адрес: столица России - Москва
Сообщений: 1,406
Репутация: 130
|
Цитата:
Цитата:
А в вашем случае делаем стринг. К примеру если вводите N-округляем( Цитата:
Цитата:
Ну и если другое,то( Цитата:
Последний раз редактировалось OverDoser; 01.03.2011 в 18:54. |
|||||
|
15.03.2011, 01:53 | #19 | ||
Гейммастер
Регистрация: 07.06.2005
Адрес: unknow
Сообщений: 9,072
Репутация: 634
|
разбираюсь с dataGridView.
с помощью dataGridView1.Columns.Add("MyColumnName", "MyColumnHeaderText"); можно добавить столбец. Но я не понимаю двух вещей. 1) зачем нужен первый параметр. Нигде в таблице его не обнаружил 2) Можно ли как-нибудь отцентровать текст в заголовке колонки?
__________________
Бывший Dart Luke Мечтаю быть модером и всех банить.... Но ведь не дадут ((((( "cъел еретика-спас дерево,"- оголодавший космодесант |
||
|
Метки |
c#, обсуждение, помощь, программирование |
|
|
|