Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Каков статус managed C++? в .NET Framework.. 
:(
    Опции темы
Kurt
Дата 26.4.2004, 02:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



Вот смотрю я на все это дело (.NET) и никак не могу понять - каков статус языка C++?
Собственно, почему возник этот вопрос - посмотрите:
1)ASP.NET-страницы на нем не создашь (ну, во всяком случае, это не предлагают при создании проекта);
2)Примеров на Managed C++ в "SDK и компания" гораздо меньше, чем, например, для VB.NET или C#.NET.
3)В студии нету дизайнера под Managed C++. Да, я знаю - есть редактор ресурсов, но он под unmanaged код. (или это у меня студия кривая/старая?..)

Итого - я немножко не понимаю - собирается ли Microsoft дальше работать в направлении Managed C++, если да, то за что такая не милость? Неужели тяжело было дизайнер сделать?

З.Ы. Сории за немного флеймовый вопрос..

Это сообщение отредактировал(а) Kurt - 26.4.2004, 03:16


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
chipset
Дата 26.4.2004, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: 1
Всего: 165



MC++ только временное средство для переноса проектов на .NET.
Микрософт ставит основную роль C# и VB.NET
Вообще то managed c++ уродливый поэтому лучше не тратить время на его изучение, а учить C#


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
stron
Дата 26.4.2004, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Консультант
***


Профиль
Группа: Комодератор
Сообщений: 1654
Регистрация: 17.7.2003
Где: Питер

Репутация: 4
Всего: 36



Я думаю, что VС.NET - это некий мост, сделанный для совместимости.(Повторяю мысль chipset'а)
Фактически VС.NET - это расширенный и слегка переделанная VC6.(или я не так понял?)
Наверное, это поможет разработчикам перейти на C#.
Тонкая логика, но толковая




--------------------
подписи нет
PM ICQ   Вверх
foRaver
Дата 26.4.2004, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 561
Регистрация: 6.7.2003
Где: Düsseldorf

Репутация: 1
Всего: 3



Я недумаю что программы, написанные на VB.NET или С# будут работать быстрее чем программы, написанные на VC++.NET. Не будем забывать, что VC++ как использовался, так и дальше будет использоваться, но благодаря C# круг программистов VC++ заметно сузится.
PM MAIL WWW ICQ YIM   Вверх
Kurt
Дата 26.4.2004, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



"Просканировал" сайт Microsoft на эту тему.
Как я понял, тока VC++.NET имеет мост с обычным unmanaged code.
Следовательно, только на нем можно писать native библиотеки для .NET - к-е потом будут использовать все остальные. Я убежден, что namespace System etc. написаны на нем.
И еще, проги на VC++.NET самые быстрые из семейства .NET - сама Microsoft использует его для DirectX (см. www.microsoft.com), поэтому, ИМХО, VC++.NET создан НЕ для связки и перехода - это основной язык (самый гибкий и мощный) для приложений, к-м нужна скорость и интеграция с Framework на разных уровнях, в т.ч. и на самом низком..
Мне кажется, он вряд ли исчезнет..



--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
foRaver
  Дата 27.4.2004, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 561
Регистрация: 6.7.2003
Где: Düsseldorf

Репутация: 1
Всего: 3



Если мне кто-то скажет, что С++ скоро вымрет, плюну в лицо! (Без обид, это просто выражение wink.gif)

Это сообщение отредактировал(а) foRaver - 27.4.2004, 00:23
PM MAIL WWW ICQ YIM   Вверх
Kurt
Дата 27.4.2004, 01:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



А я уж было хотел заикнуться.. smile.gif
Может, кто-нибудь покажет WindowsForms.NET приложение на VC++.NET?
Че-та не получается..


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
chipset
Дата 27.4.2004, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US

Репутация: 1
Всего: 165



foRaver
Не надо плеваться smile.gif
С++ жил,жив, и жить будет!!!
Но для подсемейства приложений .NET выгоднее юзать C#...


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
foRaver
Дата 27.4.2004, 03:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 561
Регистрация: 6.7.2003
Где: Düsseldorf

Репутация: 1
Всего: 3



Цитата(Kurt @ 27.4.2004, 01:24)
А я уж было хотел заикнуться.. smile.gif
Может, кто-нибудь покажет WindowsForms.NET приложение на VC++.NET?
Че-та не получается..

main.cpp

Код

#include "main.h"

CApplicationForm::CApplicationForm()
{
 // setting size of form
 Text = S"TextureBrush:7.overloaded, Rectangle, ImageAttributes";
 // setting size of form
 this->ClientSize = System::Drawing::Size(500, 500);
 // setting back ground of form
 this->set_BackColor(Color::White);
 // setting start position of form
 this->StartPosition = FormStartPosition::CenterScreen;
 this->MaximizeBox=false;
 // 3D Form style  
 this->FormBorderStyle=FormBorderStyle::Fixed3D;  
 // Paint event handler
 Paint += new PaintEventHandler(this, OnPaint);
}

void CApplicationForm::OnPaint(Object* sender, PaintEventArgs* e)
{
 // retrieving a device context
 Graphics* dc = e->Graphics;
 /******************************************************************
   System.Drawing.Graphics.TextureBrush Constructor (Image, Rectangle, ImageAttributes)

   public: TextureBrush(
     Image* bitmap  //  TextureBrush object use  the Image object when fill insides
     Rectangle  dstRect  // Bounding rectangle  of TextureBrush object, in Rectangle  structure
     ImageAttributes* imageAttr  // Image attribute info which image color is changing
   );  

 ******************************************************************/
 //
 // defining a string that represent the specified file
 //

 String *strFile = L"Aqua aura.jpg";
 // Create image object
 Image *img = new Bitmap(strFile);
 // Create ImageAttributes
 ImageAttributes* imageAttr = new ImageAttributes();
 // defining gamma correction value
 float gamma=1.5;
 // setting gamma correction value
 imageAttr->SetGamma(gamma);
 // setting wrap mode
 imageAttr->SetWrapMode(WrapMode::TileFlipXY);

 // defining bounding rectangle of TextureBrush object
 Rectangle dstRect(0, 0, 50, 50);
 // create a textured brush
 TextureBrush *txtBrush = new TextureBrush(img, dstRect, imageAttr);
 // filling inside of rectangle with the textured brush
 dc->FillRectangle(txtBrush, 50, 50, 400, 400);
}

int __stdcall WinMain()
{
 // creates  a Form object
 CApplicationForm *FormObject= new CApplicationForm();
 Application::Run(FormObject);
 return 0;
}


main.h
Код

#using <mscorlib.dll>
#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Drawing::Drawing2D;
using namespace System::Drawing::Imaging;
using namespace System::Windows::Forms;

// creating CApplicationForm class from the Form class
__gc class CApplicationForm: public Form
{
 public:
   CApplicationForm();
 private:
   void OnPaint(Object* sender, PaintEventArgs* e);
};

user posted image


Цитата(chipset)
foRaver
Не надо плеваться  smile.gif
С++ жил,жив, и жить будет!!!
Но для подсемейства приложений .NET выгоднее юзать C#...


Мне кажется что выражение "С++ был создан для того, чтобы ламеры не становились программистами!" в политике "Прикладное программирование для .NET" самое актуальное...biggrin.gif

Это сообщение отредактировал(а) foRaver - 27.4.2004, 03:52
PM MAIL WWW ICQ YIM   Вверх
srd
Дата 27.4.2004, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нереварин
**


Профиль
Группа: Участник Клуба
Сообщений: 951
Регистрация: 30.8.2003
Где: Владивосток

Репутация: нет
Всего: 49



1. В Visual Studio .NET 2003 дизайнер форм доступен и для Managed C++.
2. Managed C++ позволяет смешивать управляемый и неуправляемый код в одном приложении.
3. Сейчас создан комитет по стандартизации расширений языка С++ для создания приложений для платформы .NET. Ссылку на эту новость потерял, если найду - оставлю здесь.

Так что хоронить язык С++ как средство создания приложений для .NET ещё рано.

ЗЫ
Языку Си лет 30. Интересно, сколько раз его за это время пытались закопать? Думаю, тоже будет и с Си++. В крайнем случае, мигрирую на Linux - не хочу писать на гибриде Явы и Паскаля smile.gif Без обид, это шутка.



--------------------
Не смей читать мою подпись!!!
PM MAIL Jabber   Вверх
Kurt
Дата 27.4.2004, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



foRaver, немного не пойму - это ведь СМЕШАННЫЙ код (managed/unmanaged)?


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
Kurt
Дата 28.4.2004, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



Все. Разобрался. Стормозил как-то..

З.Ы. foRaver, респект за пример!
Добавлено @ 00:20
Единственное, что не могу понять - почему .exe в результате получается такой огромный.
Около 150КБ - пустое окно!
В то же время на C# - около 5 КБ.
В чем дело?


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
Kurt
Дата 29.4.2004, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


Профиль
Группа: Участник Клуба
Сообщений: 1662
Регистрация: 22.8.2003
Где: Краснодар

Репутация: 20
Всего: 36



Повозился с разными приложениями Managed C++ - удалось-таки создать полностью managed code. (просто выбирате "пустой managed project" smile.gif)
Все-таки странно. Один и тот же код (просто пустое окно) на всех .NET-языках занимает разный размер.
Казалось бы, ведь это все переводится в IL - почему такие различия? (разница между наибольшей(VB.NET) и наименьшей(C#.NET) сбокой составляет где-то 3КБ - не много, но все-таки..)
Теперь хочу попробовать скорость померять - что-то мне подсказыват, что у Managed C++ она должна быть наибольшей. smile.gif
А можь и нет - но зато точно определится статус Managed C++.
Кто какой тест может предложить? wink.gif


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0541 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.