|
|
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Вопрос общий. Microsoft в последнее время пишет много про C++ на сайте... В месте с тем, если смотреть в той версии MSDN, что у меня есть, все примеры кодов для .NET на C#. Есть ли смысл писать на C# под .NET? Имеется в виду - чисто теоретически - можно ли получить большую производительность и на каких задачах? P.S. За интересные ссылки буду очень признателен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 12:27 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
На сишах смысл писать есть. Производительность будет одинаковая, это же .нет Хотя с++ уровнем ниже, если сумеешь, сможешь получить чуууууть-чуууууть большую производительность, если сможешь соптимизировать круче компилятора (лично я в этом сомневаюсь), может, будешь писать сразу на иле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 12:41 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
В общем, новичок. MSIL только в проектах (далеких). Спасибо за ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 12:47 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
как правило, производительность повышается не сменой языка, а сменой алгоритма. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 12:50 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Здесь было много обсуждений на эту тему. Кто-нить дайте боянисту направление! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 13:05 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Да, вопрос на самом деле звучить так - "Есть ли смысл писать на C++ под .NET?" - там конечно же опечатка. За ссылки буду действительно признателен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 13:25 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Гость3Да, вопрос на самом деле звучить так - "Есть ли смысл писать на C++ под .NET?" - там конечно же опечатка. За ссылки буду действительно признателен. Сам думал над вопросом, какие языки изучать, что будет дальше с языками, даже тему заводил в этом форуме. Вообщем, пока решил, что языки пока никуда не пропадут, а язык надо выбирать тот, который подходит для задачи. Если надо связываеться с .NET, значит надо, если не надо, значит не надо. Надо разбираться, что какие средства, что дают. .NET под винду, значит приложения в линухах работать не будут. .NET не использовать, значит, чего-то там потеряешь. Примерно, так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 13:37 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
На самом деле считаю себя поклонником C++.. Дальнейшая детализация о "степенях свободы при предполагаемом выборе". Обычное приложение .NET под PC с интефейсом и с какой-то под него функциональностью. Скажем, работа с объектами .NET ArrayList, HashTable, БД. Не железо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 13:59 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
пиши на сишах, не вижу никаких аргументов в пользу с++ кроме разве что незнания и нежелания разбираться в сишах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 14:48 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmoпиши на сишах, не вижу никаких аргументов в пользу с++ кроме разве что незнания и нежелания разбираться в сишах. Можешь привести пример на C# класса с несколькими индексированными свойствами ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:14 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Нет проблем - и легко и удобно. Но а если вдруг всеж таки есть преимущества? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:15 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Можешь привести пример на C# класса с несколькими индексированными свойствами ?в смысле с несколькими индексерами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:27 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) maXmoпиши на сишах, не вижу никаких аргументов в пользу с++ кроме разве что незнания и нежелания разбираться в сишах. Можешь привести пример на C# класса с несколькими индексированными свойствами ? Насколько я помню, C# не позволяет только перегрузку оператора присваивания, что C++ позволяет. В остальном они схожи по функциональности. По моему там это возможно, только нужно, чтобы типы переменных индексатора не пересекались по типам. Сейчас нет C# c VS, сижу под Delphi. Не возьмусь что-нибудь изобретать без студии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:28 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
оно? Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:34 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Гость3C# не позволяет только перегрузку оператора присваивания, что C++ позволяет.перегрузка оператора присваивания имеет смысл только для value-type, а объекты в сишах всегда reference-type. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:43 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmoоно? Код: plaintext 1. 2. 3. 4. 5. 6. Перегрузка ? Нет не оно. Хочется иметь несколько свойств с разными именами. Кроме того, mcpp дает больше возможностей на боксинге/анбоксинге И разумеется, C++ незаменим если нужно мешать managed и unmanaged код Синтаксис конечно жуткий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:48 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmo Гость3C# не позволяет только перегрузку оператора присваивания, что C++ позволяет.перегрузка оператора присваивания имеет смысл только для value-type, а объекты в сишах всегда reference-type. Источник сего высказывания можно увидеть ? И потом, почему для ссылочных объектов не имеет смысл перегрузка операторов присваивания ??? P.S. генерик коллекции вообще мрак, жалкое подобие C++ темплетов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:51 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
оно? Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:53 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)И потом, почему для ссылочных объектов не имеет смысл перегрузка операторов присваивания ???потому что для перегрузки оператора надо создавать юзерский класс, а указатель/ссылка таковой не является. В с++ для указателя тоже нельзя перегрузить оператор присваивания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:56 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmoоно? Код: plaintext 1. 2. 3. Эээ, и где тут индексаторы ??? Свойство вообще налету может рассчитываться исходя из состояния cc или фаз луны, при чем тут какие-то ArrayList-ы которые про cc знать ничего не знають ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 15:58 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmo Gluk (Kazan)И потом, почему для ссылочных объектов не имеет смысл перегрузка операторов присваивания ???потому что для перегрузки оператора надо создавать юзерский класс, а указатель/ссылка таковой не является. В с++ для указателя тоже нельзя перегрузить оператор присваивания. А я думал в C# нет указателей :) тока сцылки Разумеется перегрузка действует не на указатель, а на объект на который он указывает Если уж разработчики C# потрудились скрыть от пользователей детали управления памятью (наподобие того, как это было сделано в Delphi), то почему было не обеспечить удобную работу с классами ? Мне как пользователю C# какая разница где выделяется объект ? Я хочу переопределить оператор присваивания, внеся в него дополнительную логику, только и всего :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 16:04 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
а ну если надо и то и сё, есть два выхода — явно писать геттер сеттер или наследовать IList, ICollection, IEnumerable, как это сделано в ListBox.ObjectCollection — то, что ты хотел, свойство, которое само по себе индексируется и его можно передавать в другие места как объект, поддерживающий соотв. интерфейсы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 16:07 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)А я думал в C# нет указателей :) тока сцылки это ближе к указателю, чем к ссылке (ссылку нельзя изменить). Просто синтаксис немножко удобнее сделан из-за отсутствия двусмысленности value- и reference-type. Gluk (Kazan)Разумеется перегрузка действует не на указатель, а на объект на который он указываетдля указателя вообще перегрузку нельзя определить. Смысл присваивания для указателя везде один и тот же — и в сишах и в с++. Gluk (Kazan)Если уж разработчики C# потрудились скрыть от пользователей детали управления памятью (наподобие того, как это было сделано в Delphi), то почему было не обеспечить удобную работу с классами ?с классами в сишах работать удобно, удобнее, чем в с++. Gluk (Kazan)Мне как пользователю C# какая разница где выделяется объект?пользователю вообще никакая ни до чего разница. А программеру это важно, т.к. если об этом забудешь, можно крупно пролететь. Разница такая же, как в сях при передаче объекта по ссылке и по значению — юзеру пох, а прогеру различать желательно, иначе он станет плохим прогером. Gluk (Kazan)Я хочу переопределить оператор присваивания, внеся в него дополнительную логику, только и всего :)для указателя ты и в с++ оператор присваивания не переопределишь. А почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 16:22 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)Если уж разработчики C# потрудились скрыть от пользователей детали управления памятьюв сишах это скрыто не более, чем в с++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 16:25 |
|
||
|
C++ vs C#
|
|||
|---|---|---|---|
|
#18+
maXmo Gluk (Kazan)Если уж разработчики C# потрудились скрыть от пользователей детали управления памятьюв сишах это скрыто не более, чем в с++. Я не собираюсь ругать C#, просто ваше высказывание было несколько ... поспешным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2006, 16:35 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34180121&tid=2029886]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
147ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 499ms |

| 0 / 0 |
