The OpenCL C++ kernel language is a static subset of C++14 and significantly boosts parallel programming productivity by providing lambda functions, classes, templates, operator overloading
, and many other C++ features to free developers from low-level coding details without sacrificing performance.
Coverage includes syntax, type basics, numeric types, Boolean type and operators, strings and characters, arrays, variables and parameters, expressions and operators, statements, namespaces, classes, inheritance, the object type, structs, access modifiers, interfaces, enums, nested types, generics, delegates, events, Lambda expressions, anonymous methods, try statements and exceptions, enumeration and iterators, nullable types, operator overloading
, extension methods, anonymous types, LINQ, dynamic binding, attributes, caller info attributes (C#5.
The authors also discuss new features such as generics, operator overloading
, and anonymous methods.
It seamlessly handles features of the C# language such as operator overloading
, properties, and idioms for iteration and resource management.
Python - a mostly object-oriented language with garbage collection, operator overloading
, reflection, free functions, closures, lists, iterators, and list comprehensions
The other chapters concern C++ specific topics such as object-orientation, classes and abstraction, allocating and deallocating memory, inheritance and polymorphism, templates, the STL (standard template library), operator overloading
, exceptions, and C++ syntax and semantics.
Object-oriented programming, classes and objects, inside methods, basic debugging, arrays, inheritance and polymorphism, operator overloading
, interfaces, generics and collections, strings, throwing and catching exceptions, delegates and events, creating windows applications and programming ASP.
This software release includes ease-of-use improvements to the programming model incorporating operator overloading
to simplify the use of vector data types.
1a provides many enhancements for advanced design including the extension of memory system tasks for complex memory modeling, operator overloading
for simplified expressions, and tagged unions with pattern matching for code conciseness and improved formal analysis.