Здравствуйте, ivan23i, Вы писали:
I>Я думаю не смертельно же если человеку что-то не понятно. помоему это хорошо что есть вопросы — значит он думает.
I>Если не сложно посовеетуй книжку по алгоритмам и структурам данных.
Была одна книжка... к сожалению не помню как назыается. Там били алгоритмы на VB. Главное достоинство — очень доходчивое изложение и максимально простые примеры. Естественно на ВБ, что заставит изучить еще один язык. Но — это не такая большая проблема. Во-первых, ВБ очень простой язык. Во-вторых, после второго языка изучение остальных (того же типа, например, после перла изучать С++ тяжеловато, а после С++ очень непросто понять Пролог) дается очень легко.
I>Ну а ктому что все типизированно. начинаю привыкать. Не знаю просто мне почему т понравился C#, да и для разработки КИС он помоему самое подходящее решение!
Да для разработки прикладных систем он то что нужно. Надежно и быстро. Но учить в нем нужно много чего. Даже собственно не в нем, а в библиотеках и дотнете. За-то скорость (простота) разработки и качество выше чем у большинства конкурентов.
... << RSDN@Home 1.1 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, gbush, Вы писали:
G>Но jagged массивы не соответствуют CLS
Запрета на то, чтобы элементом массива был другой массив нет. Другое дело, что на имеющихся языках (С++ и ВБ) с такими массивами придется повазиться. Там они доступны только через АПИ.
... << RSDN@Home 1.1 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, ivan23i, Вы писали:
I>>Я думаю не смертельно же если человеку что-то не понятно. помоему это хорошо что есть вопросы — значит он думает.
VD>
I>>Если не сложно посовеетуй книжку по алгоритмам и структурам данных.
VD>Была одна книжка... к сожалению не помню как назыается. Там били алгоритмы на VB. Главное достоинство — очень доходчивое изложение и максимально простые примеры. Естественно на ВБ, что заставит изучить еще один язык. Но — это не такая большая проблема. Во-первых, ВБ очень простой язык. Во-вторых, после второго языка изучение остальных (того же типа, например, после перла изучать С++ тяжеловато, а после С++ очень непросто понять Пролог) дается очень легко.
C VB на C# легко переходить, особенно в свете то что VB.Net резко отличается от VB6. А вот с С# на С++ — не очень. Да и не хочется(почему то) ...
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, ivan23i, Вы писали:
I>>ХМ, разве масисв массивов не одно и тоже что и много мерный массив?
VD>Да. Это разные вещи. Вот смотри: VD>
VD>// Массива массивов интов. Инициализируется пустым массивом.
VD>int[][] aryOfAryOfInt = new int[3][];
VD>// А вот это уже многомерный массив
VD>int[,][] aryIntMatrix = new int[3,3];
VD>// А вот разница
VD>aryOfAryOfInt[0] = new int[2];
VD>aryOfAryOfInt[1] = new int[1000];
VD>aryOfAryOfInt[2] = null;
VD>aryOfAryOfInt[0][1] = 123;
VD>aryIntMatrix[0,1] = 123;
VD>
Инетересно а можно создать Массив Массивов Массивов? Что то вроде int [][][] CFG2 = new int [x][][]. Я пытался — что то не чего не выходит. Интересно как его инициализировать в конструкторе?
Здравствуйте, ExtraLamer, Вы писали:
EL>C VB на C# легко переходить, особенно в свете то что VB.Net резко отличается от VB6.
Какая-то странная логика. ВБ6 отличается от ВБ7 куда меньше чем Шарп от ВБ6.
EL>А вот с С# на С++ — не очень.
А. Ну, ты вот это раскажи тем кто переходит.
EL>Да и не хочется(почему то) ...
Кому как. А вот мне что-то на плюсах все меньше и меньше хочется писать. Еще бы шаблоны и так по мелочи, и про плюсы можно бы было начать забывать. Хотя конечно каждому свое...
... << RSDN@Home 1.1 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, ExtraLamer, Вы писали:
EL>Инетересно а можно создать Массив Массивов Массивов?
А в чем проблема? Массив это тип, а значит можно сделать из него элемент массива. Вот только обычно смысла в такой вложенности нет.
EL> Что то вроде int [][][] CFG2 = new int [x][][]. Я пытался — что то не чего не выходит. Интересно как его инициализировать в конструкторе?
int[][][] aiii = new int[][][]
{
new int[][]
{
new int[]{ 1, 2, 3 },
new int[]{ 4, 5, 6 },
new int[]{ 7, 8, 9 }
},
new int[][]
{
new int[]{ 1, 2, 3 },
new int[]{ 4, 5, 6 },
new int[]{ 7, 8, 9 }
}
};
Console.WriteLine("Первый уровень.");
foreach(int[][] aii in aiii)
{
Console.WriteLine("Второй уровень.");
foreach(int[] ai in aii)
{
Console.WriteLine("Третий уровень.");
foreach(int i in ai)
Console.Write(i + "\t");
Console.WriteLine();
}
}
Console.WriteLine("Нажимите Enter зачем-нибудь...");
Console.ReadLine();
Кстати, инициализация реально идет в рантайме. Жертвы крутому рантайму.
... << RSDN@Home 1.1 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, ExtraLamer, Вы писали:
EL>>C VB на C# легко переходить, особенно в свете то что VB.Net резко отличается от VB6. VD>Какая-то странная логика. ВБ6 отличается от ВБ7 куда меньше чем Шарп от ВБ6.
Это да.
EL>>А вот с С# на С++ — не очень. VD>А. Ну, ты вот это раскажи тем кто переходит.
А что, кто-то переходит? В смысле начинает изучать с++ с нуля, под дотнетом — или как?
EL>>Да и не хочется(почему то) ... VD>Кому как. А вот мне что-то на плюсах все меньше и меньше хочется писать. Еще бы шаблоны и так по мелочи, и про плюсы можно бы было начать забывать. Хотя конечно каждому свое...
Да, но не стоит забывать, что есть ведь не только прикладная разработка.
Здравствуйте, VladD2, Вы писали:
VD>Все разработки к чему-то прикладываются.
VD>Ну, драйверы, ну, ОС, ну, реалтайм-задачи. Остальное без проблем пишется на дотнете.
Не знаю, что-то последнее время я начинаю сомневаться в том, что дотнет будет господствовать "на столе". В вебе — это да. А вот для настольных приложений. Уже ведь "второе поколение", так сказать, близится к концу, а что из настольного было на дотнете написано? Даже МС как-то не торопится. Как бы не разделил он в этом плане участь джавы...
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, ExtraLamer, Вы писали:
EL>>Инетересно а можно создать Массив Массивов Массивов?
VD>А в чем проблема? Массив это тип, а значит можно сделать из него элемент массива. Вот только обычно смысла в такой вложенности нет.
EL>> Что то вроде int [][][] CFG2 = new int [x][][]. Я пытался — что то не чего не выходит. Интересно как его инициализировать в конструкторе?
VD>
VD>int[][][] aiii = new int[][][]
VD>{
VD> new int[][]
VD> {
VD> new int[]{ 1, 2, 3 },
VD> new int[]{ 4, 5, 6 },
VD> new int[]{ 7, 8, 9 }
VD> },
VD> new int[][]
VD> {
VD> new int[]{ 1, 2, 3 },
VD> new int[]{ 4, 5, 6 },
VD> new int[]{ 7, 8, 9 }
VD> }
VD>};
VD>Console.WriteLine("Первый уровень.");
VD>foreach(int[][] aii in aiii)
VD>{
VD> Console.WriteLine("Второй уровень.");
VD> foreach(int[] ai in aii)
VD> {
VD> Console.WriteLine("Третий уровень.");
VD> foreach(int i in ai)
VD> Console.Write(i + "\t");
VD> Console.WriteLine();
VD> }
VD>}
VD>Console.WriteLine("Нажимите Enter зачем-нибудь...");
VD>Console.ReadLine();
VD>
спасибо за ответ. Такая форма записи массива хоть и более понятна, но менее гибка, инициализировать всё же лучше будет в конструкторе (по крайней мере моя программа этого требует). Методом тыка всё таки удалось создать Массив_Массивов_Массивов, с инициализацией в конструкторе. Хотя синтаксис весьма странный, особенно не понравилось обьявления второго уровня. исходник внизу.
VD>Кстати, инициализация реально идет в рантайме. Жертвы крутому рантайму.
В каком смысле?
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace Arrays_of_Arrays_of_Arrays
{
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Button button1;
public int[][][] aiii = new int[2][][];
public Form1()
{
// Первый уровень ...
aiii [0] = new int[2][];
aiii [1] = new int[3][];
// Второй уровень ...
// aiii [0]:
// 1
aiii [0][0] = new int[2];
// 2
aiii [0][1] = new int[1];
// aiii [1]:
// 3
aiii [1][0] = new int[3];
// 4
aiii [1][1] = new int[2];
// 5
aiii [1][2] = new int[1];
// Третий уровень ...
// Заполняем элементами
// 1
aiii[0][0][0] = 1;
aiii[0][0][1] = 2;
// 2
aiii[0][1][0] = 3;
// 3
aiii[1][0][0] = 4;
aiii[1][0][1] = 5;
aiii[1][0][2] = 6;
// 4
aiii[1][1][0] = 7;
aiii[1][1][1] = 8;
// 5
aiii[1][2][0] = 9;
InitializeComponent();
}
static void Main()
{
Application.Run(new Form1());
}
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// button1
// this.button1.Location = new System.Drawing.Point(160, 64);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(56, 56);
this.button1.TabIndex = 0;
this.button1.Text = "button1";
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// Form1
// this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(292, 265);
this.Controls.Add(this.button1);
this.Name = "Form1";
this.ResumeLayout(false);
}
private void button1_Click(object sender, System.EventArgs e)
{
/*
типа тут печать массива должна была быть ...
*/
// Application.Exit();
// Console.WriteLine("Нажимите Enter зачем-нибудь...");
// Console.ReadLine();
}
}
}
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, ExtraLamer, Вы писали:
EL>>C VB на C# легко переходить, особенно в свете то что VB.Net резко отличается от VB6.
VD>Какая-то странная логика. ВБ6 отличается от ВБ7 куда меньше чем Шарп от ВБ6.
К сожалению отличается — VB7 делали, как известно с расчётом под MSIL, тут переменные variant — не пройдут. Так что когда стал выбор у любителей VB — между VB7 и С# то многие, перешли на C#. Так как VB7 и С# — различаются только синтаксисом, а так — одно и то же. Кто му же многим понравилось что в C# отсутствуют (точнее: они там есть но обходится без них попроще, чем обходится без них на С++) указатели(Все VB программисты — вздрогнули ).
EL>>А вот с С# на С++ — не очень.
VD>А. Ну, ты вот это раскажи тем кто переходит.
EL>>Да и не хочется(почему то) ...
VD>Кому как. А вот мне что-то на плюсах все меньше и меньше хочется писать. Еще бы шаблоны и так по мелочи, и про плюсы можно бы было начать забывать. Хотя конечно каждому свое...
Да просто до Linux и прочих *nix, С# ещё не добрался, а там только плюсы и есть. Возможно и не доберётся, в свете покупки Ximian — SUN. SUN наверно всё сделает что бы на *nix — была только Java , а Mono прикроют по тихоньку.
Здравствуйте, ExtraLamer, Вы писали:
EL>Да просто до Linux и прочих *nix, С# ещё не добрался, а там только плюсы и есть. Возможно и не доберётся, в свете покупки Ximian — SUN. SUN наверно всё сделает что бы на *nix — была только Java , а Mono прикроют по тихоньку.
Во-первых, добрался. Как ты сам заметил — это mono.
А во-вторых, Ximian-а купил не SUN, а Novell (читать тут). И mono сворачивать они не собираются, а наоборот, обещают развивать.
Здравствуйте, ExtraLamer, Вы писали:
EL>К сожалению отличается — VB7 делали, как известно с расчётом под MSIL, тут переменные variant — не пройдут. Так что когда стал выбор у любителей VB — между VB7 и С# то многие, перешли на C#. Так как VB7 и С# — различаются только синтаксисом, а так — одно и то же. Кто му же многим понравилось что в C# отсутствуют (точнее: они там есть но обходится без них попроще, чем обходится без них на С++) указатели(Все VB программисты — вздрогнули ).
Отличается не только синтаксисом. В VB7 многое оставили не то чтобы для совместимости не то чтобы с VB6, а скорее с программистами на VB6 . Тут тебе и модули и прочая фигня. К тому же во многих случаях в VB7 осуществляется автоматическое обратное приведение к типу, что может весьма серьезно повлиять на дизайн всего приложения. Там и шаблоны-то по большому счету не так уж нужны.
EL>>>А вот с С# на С++ — не очень.
VD>>А. Ну, ты вот это раскажи тем кто переходит.
EL>>>Да и не хочется(почему то) ...
VD>>Кому как. А вот мне что-то на плюсах все меньше и меньше хочется писать. Еще бы шаблоны и так по мелочи, и про плюсы можно бы было начать забывать. Хотя конечно каждому свое...
EL>Да просто до Linux и прочих *nix, С# ещё не добрался, а там только плюсы и есть. Возможно и не доберётся, в свете покупки Ximian — SUN. SUN наверно всё сделает что бы на *nix — была только Java , а Mono прикроют по тихоньку.
Вообще добрался, а вот приживется ли... А оно тебе нужно?
Здравствуйте, ExtraLamer, Вы писали:
EL>Да просто до Linux и прочих *nix, С# ещё не добрался, а там только плюсы и есть. Возможно и не доберётся, в свете покупки Ximian — SUN.
Блин, как в анекдоте. Во-первых не Sun, а Novell, во-вторых разработку mono собираются не закрывать а наоборот финансировать.
Hello, Воронков!
You wrote on Mon, 25 Aug 2003 20:14:40 GMT:
хъ
Согласен.
Еще не скоро дотнет будет у каждого юзера на машине, это раз.
Два — производительность. Я как-то писал програмульку, которая заливает
содержимое файловой системы (без собственно данных, просто атрибуты) в БД.
Это было нечто! Programm files заливался часов 5-6!
WTL для лекгих клиентов рулит!
Hello, Воронков!
You wrote on Tue, 26 Aug 2003 05:36:46 GMT:
хъ ВВ> Отличается не только синтаксисом. В VB7 многое оставили не то чтобы для ВВ> совместимости не то чтобы с VB6, а скорее с программистами на VB6 ВВ> . Тут тебе и модули и прочая фигня. К тому же во многих случаях в VB7 ВВ> осуществляется автоматическое обратное приведение к типу, что
может ВВ> весьма серьезно повлиять на дизайн всего приложения.
Здравствуйте, Alexey Shirshov, Вы писали:
AS>Еще не скоро дотнет будет у каждого юзера на машине, это раз.
При теперешних размерах дистрибутивов не особо страшно. Да и будет он достаточно скоро, как начнут дозревать первые коробочные продукты на нем.
AS>Два — производительность. Я как-то писал програмульку, которая заливает AS>содержимое файловой системы (без собственно данных, просто атрибуты) в БД. AS>Это было нечто! Programm files заливался часов 5-6!
И при чем тут дотнет? У тебя на работу с БД и диском и уходит основное время, а управляемый код скорее всего занимает десятые доли процента.
Здравствуйте, Alexey Shirshov, Вы писали:
AS>Hello, Воронков! AS>You wrote on Tue, 26 Aug 2003 05:36:46 GMT:
AS>хъ ВВ>> Отличается не только синтаксисом. В VB7 многое оставили не то чтобы для ВВ>> совместимости не то чтобы с VB6, а скорее с программистами на VB6 ВВ>> . Тут тебе и модули и прочая фигня. К тому же во многих случаях в VB7 ВВ>> осуществляется автоматическое обратное приведение к типу, что AS>может ВВ>> весьма серьезно повлиять на дизайн всего приложения.
AS>Не понял.
Imports System.Xml
Imports System.Xml.Serialization
Imports System.IO
Module Module1
Sub Main()
Dim AInst As New A
Dim OInst As New Object
OInst = AInst
OInst.MyFuckingMethod() 'Sic!End Sub
End Module
Public Class A
Public Sub MyFuckingMethod()
Console.WriteLine("Some shit")
Console.ReadLine()
End Sub
End Class
Здравствуйте, Alexey Shirshov, Вы писали:
AS>Hello, Воронков! AS>You wrote on Mon, 25 Aug 2003 20:14:40 GMT:
AS>хъ AS>Согласен. AS>Еще не скоро дотнет будет у каждого юзера на машине, это раз. AS>Два — производительность. Я как-то писал програмульку, которая заливает AS>содержимое файловой системы (без собственно данных, просто атрибуты) в БД. AS>Это было нечто! Programm files заливался часов 5-6! AS>WTL для лекгих клиентов рулит!
Честно говоря, я-то как раз думаю, что с производительностью у дотнета вполне нормально. Тут у меня нареканий даже нет. Вспомни, какое было раньше одно из самых популярных средств разработки — VB6. А у него как с производительностью? С до-диезом даже сравивать смешно.
К тому же мощность компов имеет склонность удваиваться каждые 18 месяцев.
Тут скорее об отношении речь. Меня вот действительно беспокоит тот факт, что настольные плаги на дотнете что-то не особенно торопятся писать — я имею в виду проги широкого масштаба, разумеется.