SlideShare ist ein Scribd-Unternehmen logo
1 von 93
Downloaden Sie, um offline zu lesen
C++.NET
Windows Forms Course
L01 - Introduction

Mohammad Shaker
mohammadshakergtr.wordpress.com
C++.NET Windows Forms Course
@ZGTRShaker
.NET  What will you learn?
•
•
•
•
•
•

OOP with .NET, Thinking OOP and The Concept of .NET
Peek on C++.NET console
Debugging in .NET
Windows Forms Controls (Tabs, ComboBox, Timers, ...etc)
Drawing with .NET
Collections
.NET  What will you learn?
•
•
•
•
•

Event Handling
Exception Handling
Files processing - Strings Manipulating
Dynamic Controls associated with Event Handling
The Concept of C#
What’s .NET?
• .NET Framework :
– A collection of technologies that …
• Unite isolated applications
• Make information available anytime, anywhere
• Simplify development and deployment
What’s .NET?
• .NET Framework :
– Common Language Runtime* – provides an abstraction layer over the
operating system
– Base Class Libraries
• pre-built code for common low-level programming tasks

– Development frameworks and technologies
• Reusable
• customizable solutions for larger programming tasks

_________________________________________________
*The Common Language Runtime (CLR) is the virtual machine component of the .NET Framework. All
.NET programs execute under the supervision of the CLR, guaranteeing certain properties and behaviors in
the areas of memory management, security, and exception handling.
Some .NET Base Class Libraries
System.Web
Services
Description

Discovery
Protocols

System.WinForms
UI

Design

ComponentModel

HtmlControls
WebControls

System.Drawing

Security

Caching
Configuration

Drawing2D

Printing

SessionState

Imaging

Text

System.Data

System.Xml

ADO

SQL

XSLT

Design

SQLTypes

Serialization

XPath

System
Collections

IO

Security

Configuration

Net

ServiceProcess

Runtime
InteropServices

Diagnostics

Reflection

Text

Remoting

Globalization

Resources

Threading

Serialization
Visual Studio® .NET

Manage
and Collaborate

Planning
Analysis
Design
Development
Testing
Deployment
.NET Platform
.NET Framework, Languages, Tools
VB

C++

C#

JScript

Web
Services

User
Interface
Data and XML

Base Class Library
Common Language Runtime

Visual Studio .NET

Common Language Specification

…
Common Language Runtime
Base Class Library Support
Thread Support

COM Marchaler

Type Checker

Exception Manager

Security Engine

Debug Engine

IL to Native
Compilers

Code
Manager
Class Loader

Garbage
Collector
.NET Framework Services
 ASP.NET
 Logical evolution of ASP (compiled)
 Web forms
 Manageable code (non spaghetti)
 Windows® forms
 Framework for building rich clients
 ADO.NET, evolution of ADO
 New objects (e.g., DataSets)
 XML Support Throughout
Introduction to .NET
Introduction to .NET
• The .NET Framework allows you to:
– Apply common skills across a variety of devices , application types ,
and programming tasks
– Integrate with other tools and technologies to build the right
solution with less work
– Build compelling applications faster

• .NET Framework releases :
– 1 , 1.1 , 2 , 3 , 3.5 , 4, 4.5
.NET IDE and Frameworks
• .NET With Visual Studio 2008  2010  2012  2013
• Framework 3.5  4.0  4.5
Resources for .NET
 http://www.w3.org/TR/SOAP/ - W3C standards for SOAP implementation

 http://www.uddi.org – UDDI standards for web services implementation
 http://www.microsoft.com/net - Microsoft .NET home
 http://msdn.microsoft.com/net - Microsoft .NET developers home
 http://msdn.microsoft.com/xml - Microsoft XML developers home
 http://msdn.microsoft.com/webservices – Microsoft Web Services developers home

 http://www.gotdotnet.com – Developers .NET resource
Controls
•
•
•
•
•
•
•
•

Form
Button
CheckBox
CheckedListBox
ComboBox
Label
ListBox
PictureBox

•
•
•
•
•
•
•

ProgressBar
RadioButton
TextBox
Panel
TabControl
DataGridView
Timer
Con.sole
Console
Console
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
return 0;
}
Console
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
What’s this?

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
What a “namespace” is?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
Why using another namespace?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
“main”
Why?

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
Why isn’t it just a void?!
#include "stdafx.h"
Why passing a string “args”
// CppdotNetConsoleCourseTest.cpp : main project file.

using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
Easy, right?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
What’s that?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
Object/Class

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
“::” ?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Console::WriteLine

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Console::WriteLine

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console ^myConsole=gcew Console();
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console ^myConsole=gcew Console();
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
Creating an instance of class “Console”

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console ^myConsole=gcew Console();
Console::WriteLine(L"Hello World");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::Write("Hi, again!");
Console::WriteLine("n Hi, again!");
Console::Write("Hi, again!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
Console::Write("Hi, again!");
Console::WriteLine("n Hi, again!");
Console::Write("Hi, again!");
Console::ReadKey();
return 0;
}

Hello World
Hi, again!
Hi, again!
Hi, again!
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Everything is dynamically allocated through pointer!

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Why no gcnew here?!

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Why no gcnew here?!

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Returns the string that’s read from the input buffer

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.

Returns the string that’s read from the input buffer

#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str1=gcnew String("Hi Hi Hi, first time.");
String ^str2="Hi Hi Hi, second time.";
String ^str3;
Console::Write("Enter your name plz: ");
str3=Console::ReadLine();
Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!");
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i.ToString() + f.ToString());
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i.ToString() + f.ToString());
Console::ReadKey();
return 0;
}

It’s not a “->”
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i.ToString() + f.ToString());
Console::ReadKey();
return 0;
}

Where this method “ToString()” comes from?!
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i.ToString() + f.ToString());
Console::ReadKey();
return 0;
}
10
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
No “ToString()” method!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
How compiler works?!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
Arithmetic “Sum”!

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
Results a “float”

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
Results a “float”
in a “String” context

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
Results a “float”
in a “String” context

// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
float f=0;
Console::WriteLine(i + f);
Console::ReadKey();
return 0;
}

1
Console (Types Conversion)
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
String ^str=i.ToString();
Console::WriteLine(str);
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
int i=1;
String ^str=i.ToString();
Console::WriteLine(str);
Console::ReadKey();
return 0;
}
1
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123";
int i=Int32::Parse(str);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123";
int i=Int32::Parse(str);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
1124
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123";
int i=0;
Int32::TryParse(str,i);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123";
int i=0;
Int32::TryParse(str,i);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
1124
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123ccccc";
int i=0;
Int32::TryParse(str,i);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
Console
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
String ^str="1123ccccc";
int i=0;
Int32::TryParse(str,i);
i++;
Console::WriteLine(i);
Console::ReadKey();
return 0;
}
1
Arrays
Arrays
• Defining an array of string with dimension of 3
public : array <String^ , 3 > ^MyArr;
Arrays
• Defining an array of string with dimension of 3
public : array <String^ , 3 > ^MyArr;

• Everything okay?
public : array <String^ , 3 > MyArr;
public : array <String , 3 > ^MyArr;

Both are Compiler Errors!
Arrays
• Sth wrong?
array <String ^ , 1 > ^MyArr;
MyArr[0][0]="1";
Compiler error
array <String ^ , 1 > ^MyArr;
MyArr[0]=1;

Compiler error
array <String ^ , 2> ^MyArr;
MyArr=gcnew array <String^ , 2 > (100,50);
MyArr[0,0]="1";

Everything is good
Arrays
• Sth wrong?
array <String ^ , 2> ^MyArr;
MyArr=gcnew array <String^ > (100,50);
MyArr[0,0]="1";
Compiler error

array <String ^ , 2> ^MyArr;
MyArr=gcnew array <String^ , 2 > (100,50);
MyArr[0][0]="1";
Compiler error
array <String ^ , 2> ^MyArr;
MyArr=gcnew array <String^ , 2 > (100)(50);
MyArr[0,0]="1";
Compiler error
Arrays
• Sth wrong?
array <String ^> ^MyArr;
MyArr=gcnew array <String^ > (50);
MyArr[0]="1";

Everything is good
Arrays
Arrays
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
array <String ^ , 1 > ^MyArr;
MyArr[0]="1";

Console::ReadKey();
return 0;

}
Arrays
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
array <String ^ , 1 > ^MyArr;
MyArr[0]="1";

Console::ReadKey();
return 0;

}
Ntn wrong!
Arrays
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
array <String ^ , 1 > ^MyArr;
MyArr[0]="1";

Console::ReadKey();
return 0;

}
Ntn wrong!
Arrays
// CppdotNetConsoleCourseTest.cpp : main project file.
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
array <String ^ , 1 > ^MyArr;
MyArr[0]="1";

Console::ReadKey();
return 0;

}
Ntn wrong!
Arrays
• Considering that we have a class named “CELL”
array <CELL^ , 2> ^MyArr;
MyArr=gcnew array <CELL^ , 2 > (100,50);
CELL ^MyCell=gcnew CELL;
MyArr[0,0]=MyCell;
Arrays
• Considering that we have a class named “CELL”
array <CELL^ , 2> ^MyArr;
MyArr=gcnew array <CELL^ , 2 > (100,50);
CELL ^MyCell=gcnew CELL;
MyArr[0,0]=MyCell;
That’s it for today!

Weitere ähnliche Inhalte

Was ist angesagt?

PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidMatthew Johnson
 
Pharo Status ESUG 2014
Pharo Status ESUG 2014Pharo Status ESUG 2014
Pharo Status ESUG 2014Marcus Denker
 
Go for Rubyists
Go for RubyistsGo for Rubyists
Go for Rubyiststchandy
 
Reflection in Pharo5
Reflection in Pharo5Reflection in Pharo5
Reflection in Pharo5Marcus Denker
 
Engage 2014 OpenNTF Domino API Slides
Engage 2014 OpenNTF Domino API SlidesEngage 2014 OpenNTF Domino API Slides
Engage 2014 OpenNTF Domino API SlidesPaul Withers
 
#Pharo Days 2016 Data Formats and Protocols
#Pharo Days 2016 Data Formats and Protocols#Pharo Days 2016 Data Formats and Protocols
#Pharo Days 2016 Data Formats and ProtocolsPhilippe Back
 
Async programming and python
Async programming and pythonAsync programming and python
Async programming and pythonChetan Giridhar
 
Awesome Concurrency with Elixir Tasks
Awesome Concurrency with Elixir TasksAwesome Concurrency with Elixir Tasks
Awesome Concurrency with Elixir TasksJonathan Magen
 
Docker and Fluentd
Docker and FluentdDocker and Fluentd
Docker and FluentdN Masahiro
 
Utilizing the open ntf domino api
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino apiOliver Busse
 
The Ring programming language version 1.5.4 book - Part 180 of 185
The Ring programming language version 1.5.4 book - Part 180 of 185The Ring programming language version 1.5.4 book - Part 180 of 185
The Ring programming language version 1.5.4 book - Part 180 of 185Mahmoud Samir Fayed
 
C# 6 and 7 and Futures 20180607
C# 6 and 7 and Futures 20180607C# 6 and 7 and Futures 20180607
C# 6 and 7 and Futures 20180607Kevin Hazzard
 
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...DevClub_lv
 
Invoke-Obfuscation nullcon 2017
Invoke-Obfuscation nullcon 2017Invoke-Obfuscation nullcon 2017
Invoke-Obfuscation nullcon 2017Daniel Bohannon
 
#Pharo Days 2016 Reflectivity
#Pharo Days 2016 Reflectivity#Pharo Days 2016 Reflectivity
#Pharo Days 2016 ReflectivityPhilippe Back
 
Dexador Rises
Dexador RisesDexador Rises
Dexador Risesfukamachi
 
Getting Started With PowerShell Scripting
Getting Started With PowerShell ScriptingGetting Started With PowerShell Scripting
Getting Started With PowerShell ScriptingRavikanth Chaganti
 

Was ist angesagt? (20)

PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue Kid
 
Pharo Status ESUG 2014
Pharo Status ESUG 2014Pharo Status ESUG 2014
Pharo Status ESUG 2014
 
Go for Rubyists
Go for RubyistsGo for Rubyists
Go for Rubyists
 
C# and vb
C# and vbC# and vb
C# and vb
 
Reflection in Pharo5
Reflection in Pharo5Reflection in Pharo5
Reflection in Pharo5
 
Engage 2014 OpenNTF Domino API Slides
Engage 2014 OpenNTF Domino API SlidesEngage 2014 OpenNTF Domino API Slides
Engage 2014 OpenNTF Domino API Slides
 
#Pharo Days 2016 Data Formats and Protocols
#Pharo Days 2016 Data Formats and Protocols#Pharo Days 2016 Data Formats and Protocols
#Pharo Days 2016 Data Formats and Protocols
 
Async programming and python
Async programming and pythonAsync programming and python
Async programming and python
 
Awesome Concurrency with Elixir Tasks
Awesome Concurrency with Elixir TasksAwesome Concurrency with Elixir Tasks
Awesome Concurrency with Elixir Tasks
 
Docker and Fluentd
Docker and FluentdDocker and Fluentd
Docker and Fluentd
 
Python, do you even async?
Python, do you even async?Python, do you even async?
Python, do you even async?
 
Utilizing the open ntf domino api
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino api
 
The Ring programming language version 1.5.4 book - Part 180 of 185
The Ring programming language version 1.5.4 book - Part 180 of 185The Ring programming language version 1.5.4 book - Part 180 of 185
The Ring programming language version 1.5.4 book - Part 180 of 185
 
C# 6 and 7 and Futures 20180607
C# 6 and 7 and Futures 20180607C# 6 and 7 and Futures 20180607
C# 6 and 7 and Futures 20180607
 
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...
Building .NET Core tools using the Roslyn API by Arthur Tabatchnic at .Net fo...
 
Invoke-Obfuscation nullcon 2017
Invoke-Obfuscation nullcon 2017Invoke-Obfuscation nullcon 2017
Invoke-Obfuscation nullcon 2017
 
Introduction to Elm
Introduction to ElmIntroduction to Elm
Introduction to Elm
 
#Pharo Days 2016 Reflectivity
#Pharo Days 2016 Reflectivity#Pharo Days 2016 Reflectivity
#Pharo Days 2016 Reflectivity
 
Dexador Rises
Dexador RisesDexador Rises
Dexador Rises
 
Getting Started With PowerShell Scripting
Getting Started With PowerShell ScriptingGetting Started With PowerShell Scripting
Getting Started With PowerShell Scripting
 

Andere mochten auch

C# Starter L01-Intro and Warm-up
C# Starter L01-Intro and Warm-upC# Starter L01-Intro and Warm-up
C# Starter L01-Intro and Warm-upMohammad Shaker
 
C++ Windows Forms L04 - Controls P3
C++ Windows Forms L04 - Controls P3C++ Windows Forms L04 - Controls P3
C++ Windows Forms L04 - Controls P3Mohammad Shaker
 
C++ Windows Forms L09 - GDI P2
C++ Windows Forms L09 - GDI P2C++ Windows Forms L09 - GDI P2
C++ Windows Forms L09 - GDI P2Mohammad Shaker
 
C++ Windows Forms L03 - Controls P2
C++ Windows Forms L03 - Controls P2C++ Windows Forms L03 - Controls P2
C++ Windows Forms L03 - Controls P2Mohammad Shaker
 
C++ Windows Forms L11 - Inheritance
C++ Windows Forms L11 - Inheritance C++ Windows Forms L11 - Inheritance
C++ Windows Forms L11 - Inheritance Mohammad Shaker
 
C++ Windows Forms L05 - Controls P4
C++ Windows Forms L05 - Controls P4C++ Windows Forms L05 - Controls P4
C++ Windows Forms L05 - Controls P4Mohammad Shaker
 
C++ Windows Forms L06 - Utlitity and Strings
C++ Windows Forms L06 - Utlitity and StringsC++ Windows Forms L06 - Utlitity and Strings
C++ Windows Forms L06 - Utlitity and StringsMohammad Shaker
 
C++ Windows Forms L02 - Controls P1
C++ Windows Forms L02 - Controls P1C++ Windows Forms L02 - Controls P1
C++ Windows Forms L02 - Controls P1Mohammad Shaker
 

Andere mochten auch (8)

C# Starter L01-Intro and Warm-up
C# Starter L01-Intro and Warm-upC# Starter L01-Intro and Warm-up
C# Starter L01-Intro and Warm-up
 
C++ Windows Forms L04 - Controls P3
C++ Windows Forms L04 - Controls P3C++ Windows Forms L04 - Controls P3
C++ Windows Forms L04 - Controls P3
 
C++ Windows Forms L09 - GDI P2
C++ Windows Forms L09 - GDI P2C++ Windows Forms L09 - GDI P2
C++ Windows Forms L09 - GDI P2
 
C++ Windows Forms L03 - Controls P2
C++ Windows Forms L03 - Controls P2C++ Windows Forms L03 - Controls P2
C++ Windows Forms L03 - Controls P2
 
C++ Windows Forms L11 - Inheritance
C++ Windows Forms L11 - Inheritance C++ Windows Forms L11 - Inheritance
C++ Windows Forms L11 - Inheritance
 
C++ Windows Forms L05 - Controls P4
C++ Windows Forms L05 - Controls P4C++ Windows Forms L05 - Controls P4
C++ Windows Forms L05 - Controls P4
 
C++ Windows Forms L06 - Utlitity and Strings
C++ Windows Forms L06 - Utlitity and StringsC++ Windows Forms L06 - Utlitity and Strings
C++ Windows Forms L06 - Utlitity and Strings
 
C++ Windows Forms L02 - Controls P1
C++ Windows Forms L02 - Controls P1C++ Windows Forms L02 - Controls P1
C++ Windows Forms L02 - Controls P1
 

Ähnlich wie C++ Windows Forms L01 - Intro

.NET Core, ASP.NET Core Course, Session 2
.NET Core, ASP.NET Core Course, Session 2.NET Core, ASP.NET Core Course, Session 2
.NET Core, ASP.NET Core Course, Session 2aminmesbahi
 
Learn Electron for Web Developers
Learn Electron for Web DevelopersLearn Electron for Web Developers
Learn Electron for Web DevelopersKyle Cearley
 
Tamir Dresher - Demystifying the Core of .NET Core
Tamir Dresher  - Demystifying the Core of .NET CoreTamir Dresher  - Demystifying the Core of .NET Core
Tamir Dresher - Demystifying the Core of .NET CoreTamir Dresher
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2Vincent Mercier
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAmazon Web Services
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time Amazon Web Services
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Wei Sun
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern DesktopOren Novotny
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkBob German
 
Introduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdfIntroduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdfAnassElHousni
 
DotNet Introduction
DotNet IntroductionDotNet Introduction
DotNet IntroductionWei Sun
 
.NET Core: a new .NET Platform
.NET Core: a new .NET Platform.NET Core: a new .NET Platform
.NET Core: a new .NET PlatformAlex Thissen
 
01. introduction to-programming
01. introduction to-programming01. introduction to-programming
01. introduction to-programmingStoian Kirov
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesVagif Abilov
 
Deploying windows containers with kubernetes
Deploying windows containers with kubernetesDeploying windows containers with kubernetes
Deploying windows containers with kubernetesBen Hall
 
.NET Recommended Resources
.NET Recommended Resources.NET Recommended Resources
.NET Recommended ResourcesGreg Sohl
 

Ähnlich wie C++ Windows Forms L01 - Intro (20)

.NET Core, ASP.NET Core Course, Session 2
.NET Core, ASP.NET Core Course, Session 2.NET Core, ASP.NET Core Course, Session 2
.NET Core, ASP.NET Core Course, Session 2
 
Learn Electron for Web Developers
Learn Electron for Web DevelopersLearn Electron for Web Developers
Learn Electron for Web Developers
 
Tamir Dresher - Demystifying the Core of .NET Core
Tamir Dresher  - Demystifying the Core of .NET CoreTamir Dresher  - Demystifying the Core of .NET Core
Tamir Dresher - Demystifying the Core of .NET Core
 
Intro to .NET and Core C#
Intro to .NET and Core C#Intro to .NET and Core C#
Intro to .NET and Core C#
 
DevOPS training - Day 2/2
DevOPS training - Day 2/2DevOPS training - Day 2/2
DevOPS training - Day 2/2
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time
 
Next .NET and C#
Next .NET and C#Next .NET and C#
Next .NET and C#
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint Framework
 
Introduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdfIntroduction-to-C-Part-1.pdf
Introduction-to-C-Part-1.pdf
 
DotNet Introduction
DotNet IntroductionDotNet Introduction
DotNet Introduction
 
.NET Core: a new .NET Platform
.NET Core: a new .NET Platform.NET Core: a new .NET Platform
.NET Core: a new .NET Platform
 
C++Basics2022.pptx
C++Basics2022.pptxC++Basics2022.pptx
C++Basics2022.pptx
 
01. introduction to-programming
01. introduction to-programming01. introduction to-programming
01. introduction to-programming
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class Libraries
 
Deploying windows containers with kubernetes
Deploying windows containers with kubernetesDeploying windows containers with kubernetes
Deploying windows containers with kubernetes
 
.NET Recommended Resources
.NET Recommended Resources.NET Recommended Resources
.NET Recommended Resources
 
Mini .net conf 2020
Mini .net conf 2020Mini .net conf 2020
Mini .net conf 2020
 

Mehr von Mohammad Shaker

12 Rules You Should to Know as a Syrian Graduate
12 Rules You Should to Know as a Syrian Graduate12 Rules You Should to Know as a Syrian Graduate
12 Rules You Should to Know as a Syrian GraduateMohammad Shaker
 
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Mohammad Shaker
 
Interaction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyInteraction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyMohammad Shaker
 
Short, Matters, Love - Passioneers Event 2015
Short, Matters, Love -  Passioneers Event 2015Short, Matters, Love -  Passioneers Event 2015
Short, Matters, Love - Passioneers Event 2015Mohammad Shaker
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game DevelopmentMohammad Shaker
 
Android L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesAndroid L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesMohammad Shaker
 
Interaction Design L03 - Color
Interaction Design L03 - ColorInteraction Design L03 - Color
Interaction Design L03 - ColorMohammad Shaker
 
Interaction Design L05 - Typography
Interaction Design L05 - TypographyInteraction Design L05 - Typography
Interaction Design L05 - TypographyMohammad Shaker
 
Interaction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingInteraction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingMohammad Shaker
 
Android L04 - Notifications and Threading
Android L04 - Notifications and ThreadingAndroid L04 - Notifications and Threading
Android L04 - Notifications and ThreadingMohammad Shaker
 
Android L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSAndroid L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSMohammad Shaker
 
Interaction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsInteraction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsMohammad Shaker
 
Interaction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsInteraction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsMohammad Shaker
 
Android L10 - Stores and Gaming
Android L10 - Stores and GamingAndroid L10 - Stores and Gaming
Android L10 - Stores and GamingMohammad Shaker
 
Android L06 - Cloud / Parse
Android L06 - Cloud / ParseAndroid L06 - Cloud / Parse
Android L06 - Cloud / ParseMohammad Shaker
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesMohammad Shaker
 
Android L03 - Styles and Themes
Android L03 - Styles and Themes Android L03 - Styles and Themes
Android L03 - Styles and Themes Mohammad Shaker
 
Android L02 - Activities and Adapters
Android L02 - Activities and AdaptersAndroid L02 - Activities and Adapters
Android L02 - Activities and AdaptersMohammad Shaker
 

Mehr von Mohammad Shaker (20)

12 Rules You Should to Know as a Syrian Graduate
12 Rules You Should to Know as a Syrian Graduate12 Rules You Should to Know as a Syrian Graduate
12 Rules You Should to Know as a Syrian Graduate
 
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
Ultra Fast, Cross Genre, Procedural Content Generation in Games [Master Thesis]
 
Interaction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with PsychologyInteraction Design L06 - Tricks with Psychology
Interaction Design L06 - Tricks with Psychology
 
Short, Matters, Love - Passioneers Event 2015
Short, Matters, Love -  Passioneers Event 2015Short, Matters, Love -  Passioneers Event 2015
Short, Matters, Love - Passioneers Event 2015
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game Development
 
Android L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and WearablesAndroid L07 - Touch, Screen and Wearables
Android L07 - Touch, Screen and Wearables
 
Interaction Design L03 - Color
Interaction Design L03 - ColorInteraction Design L03 - Color
Interaction Design L03 - Color
 
Interaction Design L05 - Typography
Interaction Design L05 - TypographyInteraction Design L05 - Typography
Interaction Design L05 - Typography
 
Interaction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and CouplingInteraction Design L04 - Materialise and Coupling
Interaction Design L04 - Materialise and Coupling
 
Android L05 - Storage
Android L05 - StorageAndroid L05 - Storage
Android L05 - Storage
 
Android L04 - Notifications and Threading
Android L04 - Notifications and ThreadingAndroid L04 - Notifications and Threading
Android L04 - Notifications and Threading
 
Android L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOSAndroid L09 - Windows Phone and iOS
Android L09 - Windows Phone and iOS
 
Interaction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile ConstraintsInteraction Design L01 - Mobile Constraints
Interaction Design L01 - Mobile Constraints
 
Interaction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and GridsInteraction Design L02 - Pragnanz and Grids
Interaction Design L02 - Pragnanz and Grids
 
Android L10 - Stores and Gaming
Android L10 - Stores and GamingAndroid L10 - Stores and Gaming
Android L10 - Stores and Gaming
 
Android L06 - Cloud / Parse
Android L06 - Cloud / ParseAndroid L06 - Cloud / Parse
Android L06 - Cloud / Parse
 
Android L08 - Google Maps and Utilities
Android L08 - Google Maps and UtilitiesAndroid L08 - Google Maps and Utilities
Android L08 - Google Maps and Utilities
 
Android L03 - Styles and Themes
Android L03 - Styles and Themes Android L03 - Styles and Themes
Android L03 - Styles and Themes
 
Android L02 - Activities and Adapters
Android L02 - Activities and AdaptersAndroid L02 - Activities and Adapters
Android L02 - Activities and Adapters
 
Android L01 - Warm Up
Android L01 - Warm UpAndroid L01 - Warm Up
Android L01 - Warm Up
 

Kürzlich hochgeladen

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 

Kürzlich hochgeladen (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

C++ Windows Forms L01 - Intro

  • 1. C++.NET Windows Forms Course L01 - Introduction Mohammad Shaker mohammadshakergtr.wordpress.com C++.NET Windows Forms Course @ZGTRShaker
  • 2. .NET What will you learn? • • • • • • OOP with .NET, Thinking OOP and The Concept of .NET Peek on C++.NET console Debugging in .NET Windows Forms Controls (Tabs, ComboBox, Timers, ...etc) Drawing with .NET Collections
  • 3. .NET What will you learn? • • • • • Event Handling Exception Handling Files processing - Strings Manipulating Dynamic Controls associated with Event Handling The Concept of C#
  • 4. What’s .NET? • .NET Framework : – A collection of technologies that … • Unite isolated applications • Make information available anytime, anywhere • Simplify development and deployment
  • 5. What’s .NET? • .NET Framework : – Common Language Runtime* – provides an abstraction layer over the operating system – Base Class Libraries • pre-built code for common low-level programming tasks – Development frameworks and technologies • Reusable • customizable solutions for larger programming tasks _________________________________________________ *The Common Language Runtime (CLR) is the virtual machine component of the .NET Framework. All .NET programs execute under the supervision of the CLR, guaranteeing certain properties and behaviors in the areas of memory management, security, and exception handling.
  • 6. Some .NET Base Class Libraries System.Web Services Description Discovery Protocols System.WinForms UI Design ComponentModel HtmlControls WebControls System.Drawing Security Caching Configuration Drawing2D Printing SessionState Imaging Text System.Data System.Xml ADO SQL XSLT Design SQLTypes Serialization XPath System Collections IO Security Configuration Net ServiceProcess Runtime InteropServices Diagnostics Reflection Text Remoting Globalization Resources Threading Serialization
  • 7. Visual Studio® .NET Manage and Collaborate Planning Analysis Design Development Testing Deployment .NET Platform
  • 8. .NET Framework, Languages, Tools VB C++ C# JScript Web Services User Interface Data and XML Base Class Library Common Language Runtime Visual Studio .NET Common Language Specification …
  • 9. Common Language Runtime Base Class Library Support Thread Support COM Marchaler Type Checker Exception Manager Security Engine Debug Engine IL to Native Compilers Code Manager Class Loader Garbage Collector
  • 10. .NET Framework Services  ASP.NET  Logical evolution of ASP (compiled)  Web forms  Manageable code (non spaghetti)  Windows® forms  Framework for building rich clients  ADO.NET, evolution of ADO  New objects (e.g., DataSets)  XML Support Throughout
  • 12. Introduction to .NET • The .NET Framework allows you to: – Apply common skills across a variety of devices , application types , and programming tasks – Integrate with other tools and technologies to build the right solution with less work – Build compelling applications faster • .NET Framework releases : – 1 , 1.1 , 2 , 3 , 3.5 , 4, 4.5
  • 13.
  • 14.
  • 15. .NET IDE and Frameworks • .NET With Visual Studio 2008 2010 2012 2013 • Framework 3.5 4.0 4.5
  • 16. Resources for .NET  http://www.w3.org/TR/SOAP/ - W3C standards for SOAP implementation  http://www.uddi.org – UDDI standards for web services implementation  http://www.microsoft.com/net - Microsoft .NET home  http://msdn.microsoft.com/net - Microsoft .NET developers home  http://msdn.microsoft.com/xml - Microsoft XML developers home  http://msdn.microsoft.com/webservices – Microsoft Web Services developers home  http://www.gotdotnet.com – Developers .NET resource
  • 17.
  • 21.
  • 23. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); return 0; }
  • 25. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 26. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 27. Console What’s this? // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 28. Console What a “namespace” is?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 29. Console Why using another namespace?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 30. Console “main” Why? // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 31. Console Why isn’t it just a void?! #include "stdafx.h" Why passing a string “args” // CppdotNetConsoleCourseTest.cpp : main project file. using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 32. Console Easy, right?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 33. Console What’s that?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 34. Console Object/Class // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 35. Console “::” ?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 36. Console // CppdotNetConsoleCourseTest.cpp : main project file. Console::WriteLine #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 37. Console // CppdotNetConsoleCourseTest.cpp : main project file. Console::WriteLine #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 38. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console ^myConsole=gcew Console(); Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 39. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console ^myConsole=gcew Console(); Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 40. Console Creating an instance of class “Console” // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console ^myConsole=gcew Console(); Console::WriteLine(L"Hello World"); Console::ReadKey(); return 0; }
  • 41.
  • 42. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::Write("Hi, again!"); Console::WriteLine("n Hi, again!"); Console::Write("Hi, again!"); Console::ReadKey(); return 0; }
  • 43. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { Console::WriteLine(L"Hello World"); Console::Write("Hi, again!"); Console::WriteLine("n Hi, again!"); Console::Write("Hi, again!"); Console::ReadKey(); return 0; } Hello World Hi, again! Hi, again! Hi, again!
  • 44. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 45. Console // CppdotNetConsoleCourseTest.cpp : main project file. Everything is dynamically allocated through pointer! #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 46. Console // CppdotNetConsoleCourseTest.cpp : main project file. Why no gcnew here?! #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 47. Console // CppdotNetConsoleCourseTest.cpp : main project file. Why no gcnew here?! #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 48. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 49. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 50. Console // CppdotNetConsoleCourseTest.cpp : main project file. Returns the string that’s read from the input buffer #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 51. Console // CppdotNetConsoleCourseTest.cpp : main project file. Returns the string that’s read from the input buffer #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str1=gcnew String("Hi Hi Hi, first time."); String ^str2="Hi Hi Hi, second time."; String ^str3; Console::Write("Enter your name plz: "); str3=Console::ReadLine(); Console::WriteLine(str1 + " " + str2 + " Hi " + str3 + "!"); Console::ReadKey(); return 0; }
  • 52. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i.ToString() + f.ToString()); Console::ReadKey(); return 0; }
  • 53. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i.ToString() + f.ToString()); Console::ReadKey(); return 0; } It’s not a “->”
  • 54. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i.ToString() + f.ToString()); Console::ReadKey(); return 0; } Where this method “ToString()” comes from?!
  • 55. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i.ToString() + f.ToString()); Console::ReadKey(); return 0; } 10
  • 56. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 57. Console No “ToString()” method! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 58. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 59. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 60. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 61. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 62. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 63. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 64. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 65. Console How compiler works?! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 66. Console Arithmetic “Sum”! // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 67. Console Results a “float” // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 68. Console Results a “float” in a “String” context // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 69. Console Results a “float” in a “String” context // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; }
  • 70. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; float f=0; Console::WriteLine(i + f); Console::ReadKey(); return 0; } 1
  • 71. Console (Types Conversion) // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; String ^str=i.ToString(); Console::WriteLine(str); Console::ReadKey(); return 0; }
  • 72. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { int i=1; String ^str=i.ToString(); Console::WriteLine(str); Console::ReadKey(); return 0; } 1
  • 73. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123"; int i=Int32::Parse(str); i++; Console::WriteLine(i); Console::ReadKey(); return 0; }
  • 74. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123"; int i=Int32::Parse(str); i++; Console::WriteLine(i); Console::ReadKey(); return 0; } 1124
  • 75. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123"; int i=0; Int32::TryParse(str,i); i++; Console::WriteLine(i); Console::ReadKey(); return 0; }
  • 76. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123"; int i=0; Int32::TryParse(str,i); i++; Console::WriteLine(i); Console::ReadKey(); return 0; } 1124
  • 77. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123ccccc"; int i=0; Int32::TryParse(str,i); i++; Console::WriteLine(i); Console::ReadKey(); return 0; }
  • 78. Console // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { String ^str="1123ccccc"; int i=0; Int32::TryParse(str,i); i++; Console::WriteLine(i); Console::ReadKey(); return 0; } 1
  • 80.
  • 81. Arrays • Defining an array of string with dimension of 3 public : array <String^ , 3 > ^MyArr;
  • 82. Arrays • Defining an array of string with dimension of 3 public : array <String^ , 3 > ^MyArr; • Everything okay? public : array <String^ , 3 > MyArr; public : array <String , 3 > ^MyArr; Both are Compiler Errors!
  • 83. Arrays • Sth wrong? array <String ^ , 1 > ^MyArr; MyArr[0][0]="1"; Compiler error array <String ^ , 1 > ^MyArr; MyArr[0]=1; Compiler error array <String ^ , 2> ^MyArr; MyArr=gcnew array <String^ , 2 > (100,50); MyArr[0,0]="1"; Everything is good
  • 84. Arrays • Sth wrong? array <String ^ , 2> ^MyArr; MyArr=gcnew array <String^ > (100,50); MyArr[0,0]="1"; Compiler error array <String ^ , 2> ^MyArr; MyArr=gcnew array <String^ , 2 > (100,50); MyArr[0][0]="1"; Compiler error array <String ^ , 2> ^MyArr; MyArr=gcnew array <String^ , 2 > (100)(50); MyArr[0,0]="1"; Compiler error
  • 85. Arrays • Sth wrong? array <String ^> ^MyArr; MyArr=gcnew array <String^ > (50); MyArr[0]="1"; Everything is good
  • 87. Arrays // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { array <String ^ , 1 > ^MyArr; MyArr[0]="1"; Console::ReadKey(); return 0; }
  • 88. Arrays // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { array <String ^ , 1 > ^MyArr; MyArr[0]="1"; Console::ReadKey(); return 0; } Ntn wrong!
  • 89. Arrays // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { array <String ^ , 1 > ^MyArr; MyArr[0]="1"; Console::ReadKey(); return 0; } Ntn wrong!
  • 90. Arrays // CppdotNetConsoleCourseTest.cpp : main project file. #include "stdafx.h" using namespace System; int main(array<System::String ^> ^args) { array <String ^ , 1 > ^MyArr; MyArr[0]="1"; Console::ReadKey(); return 0; } Ntn wrong!
  • 91. Arrays • Considering that we have a class named “CELL” array <CELL^ , 2> ^MyArr; MyArr=gcnew array <CELL^ , 2 > (100,50); CELL ^MyCell=gcnew CELL; MyArr[0,0]=MyCell;
  • 92. Arrays • Considering that we have a class named “CELL” array <CELL^ , 2> ^MyArr; MyArr=gcnew array <CELL^ , 2 > (100,50); CELL ^MyCell=gcnew CELL; MyArr[0,0]=MyCell;
  • 93. That’s it for today!