Kate Gregory | Gregory Consulting James McNellis | Senior Engineer, Visual C++

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Preface Demo A Quick Thank You How Did We Do It?
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Windows 7 Training. Windows ® 7 Compatibility Session 0 Isolation Isolation of Windows 7 Services.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Jeffrey Snover | Distinguished Engineer & Lead Architect Jason Helmick | Senior Technologist, Concentrated Technology.
Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Jon Galloway | Technical Evangelist Christopher Harrison | Content Developer.
Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Multitenant Model Request/Response General Model.
Gerry O’Brien| Technical Content Development Manager Paul Pardi| Senior Content Publishing Manager.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Steven Borg | Co-founder & Strategist, Northwest Cadence Anthony Borton | ALM Consultant, Enhance ALM.
Announcing Demo Announcing.
Feature: Web Client Keyboard Shortcuts © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
 Rico Mariani Architect Microsoft Corporation.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Print Remaining Documents © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Windows Azure Connect Name Title Microsoft Corporation.
NEXT: Overview – Sharing skills & code.
demo Receive Inventory Export Parse and Normalize.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Jon Galloway | Development Platform Evangelist Christopher Harrison | Microsoft Certified Trainer.
Nick Scott | Dynamics CRM Consultant with BKD Technologies.
Koen Stox | Application Consultant 1998 MCT 2005 Co-owner of Plataan (CPLS in Belgium)
Feature: Suggested Item Enhancements – Sales Script and Additional Information © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
SQL Server SQL Azure Visual Studio“Quadrant” SQL Server Modeling Services Entity Framework ADO.NET“M”/EDM Data Services …
announcing Dev Manager Do I understand what we’ve built? Developer Can I bet on using this shared component? Testers What’s changed since I last.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”
Microsoft Virtual Academy Stacey Mulcahy | Technical Evangelist Christopher Harrison | Content Developer.

customer.
Jeffrey Snover | Distinguished Engineer & Lead Architect Jason Helmick | Senior Technologist, Concentrated Technology.
03 | Word Templates Brian Meier| Senior Lead Program Manager.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
Feature: Suggested Item Enhancements – Analysis and Assignment © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and.
Windows Azure SQL Data Sync Name Title Microsoft Corporation.
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
The CLR CoreCLRCoreCLR © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
03 | Object-Oriented Programming Gerry O’Brien | Technical Content Development Manager Paul Pardi | Senior Content Publishing Manager.
04 | Business Analyzer Brian Meier| Senior Lead Program Manager.

MIX 09 5/29/ :31 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Cross Platform Development with Xamarin & Visual Studio 2013
Title of Presentation 11/22/2018 3:34 PM
Title of Presentation 12/2/2018 3:48 PM
Alex Kelly | Program Manager
Microsoft Virtual Academy
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
Title of Presentation 5/12/ :53 PM
Шитманов Дархан Қаражанұлы Тарих пәнінің
Title of Presentation 5/24/2019 1:26 PM
01 | A Lap Around Visual Studio Online
Title of Presentation 7/24/2019 8:53 PM
What’s ASP.NET 5 and Why? Scott Hunter | Director of Program Management Scott Hanselman | Principal Program Manager.
Presentation transcript:

Kate Gregory | Gregory Consulting James McNellis | Senior Engineer, Visual C++

Meet Kate Gregory | Consultant (mentor), author, developer All about community –MVP, RD, user groups, conferences –StackOverflow –Twitter, blog, Facebook… Over 35 years of industry experience Using C++ since before Microsoft had a C++ compiler

Meet James McNellis Senior Software Development Engineer at Microsoft –Currently a member of the Visual C++ Libraries team One of the top C++ contributors on StackOverflow Using C++ since Microsoft released Visual C Usually has absolutely no idea what he is doing

Course Topics C++: A General Purpose Language and Library 01 | Getting Started 05 | Pointers and RAII – Resource Acquisition is Initialization 02 | Fundamentals06 | The C++ Standard Library, or STL 03 | The C++ Object Model07 | Next Steps 04 | References and Inheritance

Setting Expectations Target Audience –Has done some development in any other programming language –Familiar with concepts like looping, conditional expressions –No need for any C++ background or any C-related language Suggested Prerequisites/Supporting Material –Book: C++ Primer, 5 th Ed., by Lippman, Lajoie, and Moo Software and Tools –Microsoft Visual Studio Express 2013 for Windows Desktop –Free download Sample Code available –

Microsoft Virtual Academy –Free online learning tailored for IT Pros and Developers –Over 1M registered users –Up-to-date, relevant training on variety of Microsoft products “Earn while you learn!” –Get 50 MVA Points for this event! –Visit –Enter this code: CPlusPlus (expires 12/20/2013) Join the MVA Community!

01 | {Getting Started} Kate Gregory | Gregory Consulting James McNellis | Senior Engineer, Visual C++

Development Environment How to write, build, and run code Quick History of C++ Variables and Types Module Overview

Lesson 1 – Development Environment Development Environment

Visual Studio Express 2013 for Windows Desktop –It’s free and it’s all you need to follow along Not using Windows? –C++ works on other platforms too – has links to compilershttp://isocpp.org/get-started Our sample code is available –LINK TBA

DEMO Hello, World!

Lesson 2: How to Write, Build and Run Code How code is built Structure of a C++ program Debugging

The Compilation Process Preprocessor Takes your C++ source code and evaluates preprocessor directives. Produces a preprocessed source file (but usually is just part of compiler). Compiler Takes preprocessed source code, compiles into object files. Checks that your code conforms to all syntax and semantic rules (e.g., no type errors). Accepts promises from the code about things defined in other source files. Linker Takes object files, links them into an executable program. Ensures that all of the promises to the compiler are kept.

Structure of a C++ program #include int main() { std::cout << "Hello, World!" << std::endl; return 0; } Use a library Special function name that the OS calls to run your program std::cout represents console output << means send the next thing to it

DEMO Building

Debugging Normally a console application –Starts –Executes the code in main() –Might print to the console (or read from the keyboard) –Terminates (quits) Under a debugger, you can pause execution –Inspect values –Watch execution proceed –Slower, but vital to understanding

DEMO Debugging

Lesson 3: Quick History of C++ Born in 1979 as C with Classes –Retains backward compatibility with C Named C++ in 1983 Ratified as ISO standard in 1998 Continues to change under stewardship of a standards committee

Lesson 1: Types C++ is strongly typed Fundamental types Casting (changing type)

DEMO Types

Fundamental Types Types you use a lot: –int, unsigned int –double –bool Types you may see –char, unsigned char –long, unsigned long –short, unsigned short –float

Casting Instead of writing code that relies on the compiler to convert one type to another, you can ask for it explicitly i = static_cast (3.2); Makes a good “signpost” for others who read your code Takes away compiler warnings –Always try to build warning free

DEMO Casting

©2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.