Virtual function
A member function that you expect to be redefined in derived classes.
~ MSDN, #CPP
Virtual function or method
A function or method whose behaviour can be overridden within an inheriting class by a function with the same signature to provide the polymorphic behavior.
~ Wikipedia
A member function that you expect to be redefined in derived classes.
~ MSDN, #CPP
Virtual function or method
A function or method whose behaviour can be overridden within an inheriting class by a function with the same signature to provide the polymorphic behavior.
~ Wikipedia
Standard C
1989: the C standard was ratified as ANSI X3.159-1989. This version of C is often referred to as ANSI C, Standard C, or C89. It is still supported by current C compilers, and most C code being written today is based on it. Any program written in it, that has no hardware-dependent assumptions, will run correctly on any platform. It introduced:
• function prototypes, borrowed from #cpp
• void pointers
• support for international character sets and locales
• preprocessor enhancements
Although the syntax for parameter declarations was augmented to include the style used in C++, the K&R interface continued to be permitted, for compatibility with existing source code.
Even after the publication of the ANSI standard, for many years K&R C was still considered the "lowest common denominator" to which C programmers restricted themselves when maximum portability was desired, since many older compilers were still in use, and because carefully written K&R C code can be legal Standard C as well.
1988 April: A second edition of The C Programming Language book was released to cover the ANSI C standard, particularly on standard libraries. Though C has since undergone more revisions, no new editions have been issued.
1990: ANSI C was adopted by the ISO as ISO/IEC 9899:1990. Therefore, C90 and C89 are the same C.
1995: C95 (ISO/IEC 9899/AMD1:1995) was published to correct some details and to add more extensive support for international character sets.
1999: C99 (ISO/IEC 9899:1999) introduced:
• inline functions
•
• variable-length arrays
• flexible array members
• improved support for IEEE 754 floating point
• variadic macros (macros of variable arity)
• one-line comments with
Many of these had already been implemented as extensions in several C compilers.
2008: The C Standards Committee published a technical report extending the C language to address embedded programming with C which previously relied on non-standard extensions. Exotic features, not available in normal C, such as fixed-point arithmetic, named address spaces, and basic I/O hardware addressing, were added.
Late 2000s: work began on C1X, which added:
• type generic macros
• anonymous structures
• improved Unicode support
• atomic operations
• multi-threading, bounds-checked functions
It also:
• made some portions of the existing C99 library optional
• improved compatibility with C++
2011, December 8th: C1X, renamed to C11, was officially published.
2018, June: C18, the current standard for C, was released. It introduced no new features and only corrected and clarified technical defects in C11.
Nowadays, C is one of the most widely used programming languages and has found lasting use in applications previously coded in assembly language, such as OSs, and application software for platforms ranging from embedded systems to supercomputers.
1989: the C standard was ratified as ANSI X3.159-1989. This version of C is often referred to as ANSI C, Standard C, or C89. It is still supported by current C compilers, and most C code being written today is based on it. Any program written in it, that has no hardware-dependent assumptions, will run correctly on any platform. It introduced:
• function prototypes, borrowed from #cpp
• void pointers
• support for international character sets and locales
• preprocessor enhancements
Although the syntax for parameter declarations was augmented to include the style used in C++, the K&R interface continued to be permitted, for compatibility with existing source code.
Even after the publication of the ANSI standard, for many years K&R C was still considered the "lowest common denominator" to which C programmers restricted themselves when maximum portability was desired, since many older compilers were still in use, and because carefully written K&R C code can be legal Standard C as well.
1988 April: A second edition of The C Programming Language book was released to cover the ANSI C standard, particularly on standard libraries. Though C has since undergone more revisions, no new editions have been issued.
1990: ANSI C was adopted by the ISO as ISO/IEC 9899:1990. Therefore, C90 and C89 are the same C.
1995: C95 (ISO/IEC 9899/AMD1:1995) was published to correct some details and to add more extensive support for international character sets.
1999: C99 (ISO/IEC 9899:1999) introduced:
• inline functions
•
long long int and a complex type to represent complex numbers• variable-length arrays
• flexible array members
• improved support for IEEE 754 floating point
• variadic macros (macros of variable arity)
• one-line comments with
//Many of these had already been implemented as extensions in several C compilers.
2008: The C Standards Committee published a technical report extending the C language to address embedded programming with C which previously relied on non-standard extensions. Exotic features, not available in normal C, such as fixed-point arithmetic, named address spaces, and basic I/O hardware addressing, were added.
Late 2000s: work began on C1X, which added:
• type generic macros
• anonymous structures
• improved Unicode support
• atomic operations
• multi-threading, bounds-checked functions
It also:
• made some portions of the existing C99 library optional
• improved compatibility with C++
2011, December 8th: C1X, renamed to C11, was officially published.
2018, June: C18, the current standard for C, was released. It introduced no new features and only corrected and clarified technical defects in C11.
Nowadays, C is one of the most widely used programming languages and has found lasting use in applications previously coded in assembly language, such as OSs, and application software for platforms ranging from embedded systems to supercomputers.
History of GameMaker: "Game Maker"
1999, summer: The development of Animo, developed in #Delphi by Mark Overmars, a professor at the University of Utrecht, started.
1999, 15 November: V1.1, a simple 2D animation designing tool with a limited visual scripting language, was publicly released. V1.4 made it possible to generate executables. Subsequent releases changed the name to "Game Maker" and moved towards more general-purpose 2D game development.
2000, September: V2.0 was released, which first used #DirectX for sounds, but not graphics.
2001: V3.0 was released and now also used DirectX for graphics. It saved games as
2001, July: V4.0, rewritten from scratch, was released. The GUI was completely revised and took the form that was more or less preserved in later versions. The file extension was changed to
2003, April: V5.0 was released and had a completely new interpreter, making games considerably faster. Although it had been freeware up to v5.0, later versions introduced an optional registration fee.
2004, January: V5.3 introduced many features for registered users, including: particle systems, networking, and DLLs.
2004, October: V6.0 was released. The runtime's drawing pipeline migrated from VCL to Direct3D. This led to sprites, better fonts, primitives, and 3D graphics, but it also broke compatibility. The file extension was changed to .gm6. V6.1 added surfaces.
2007: Growing public interest led Overmars to seek help in expanding the program, which led to partnership with YoYo Games, and Overmars retained a position as one of company's directors.
2007, January: V7.0 was released under the partnership with YoYo Games. It introduced the use of extensions. The file extension was changed to
To create a "YouTube for games", the now archived YoYo Games Sandbox website was created a for uploading and playing Game Maker games, and became quite a success.
2009, December: V8.0 was released. Sprites and the built-in sprite editor were greatly improved, making it much easier to use alpha transparency.
2011, April: V8.1 changed the name to GameMaker (lacking a space) to avoid confusion with the 1991 software Game-Maker. The runtime was rewritten in #CPP to address performance concerns with previous versions. The file extension was changed to
Because of competing projects such as G-Java, G-Creator, LateralGM, etc., the editable game files were encrypted since v.7.0. However, it was not long before the encryptions were broken.
— Summary from game-maker.nl
1999, summer: The development of Animo, developed in #Delphi by Mark Overmars, a professor at the University of Utrecht, started.
1999, 15 November: V1.1, a simple 2D animation designing tool with a limited visual scripting language, was publicly released. V1.4 made it possible to generate executables. Subsequent releases changed the name to "Game Maker" and moved towards more general-purpose 2D game development.
2000, September: V2.0 was released, which first used #DirectX for sounds, but not graphics.
2001: V3.0 was released and now also used DirectX for graphics. It saved games as
.gmf files.2001, July: V4.0, rewritten from scratch, was released. The GUI was completely revised and took the form that was more or less preserved in later versions. The file extension was changed to
.gmd.2003, April: V5.0 was released and had a completely new interpreter, making games considerably faster. Although it had been freeware up to v5.0, later versions introduced an optional registration fee.
2004, January: V5.3 introduced many features for registered users, including: particle systems, networking, and DLLs.
2004, October: V6.0 was released. The runtime's drawing pipeline migrated from VCL to Direct3D. This led to sprites, better fonts, primitives, and 3D graphics, but it also broke compatibility. The file extension was changed to .gm6. V6.1 added surfaces.
2007: Growing public interest led Overmars to seek help in expanding the program, which led to partnership with YoYo Games, and Overmars retained a position as one of company's directors.
2007, January: V7.0 was released under the partnership with YoYo Games. It introduced the use of extensions. The file extension was changed to
.gmk.To create a "YouTube for games", the now archived YoYo Games Sandbox website was created a for uploading and playing Game Maker games, and became quite a success.
2009, December: V8.0 was released. Sprites and the built-in sprite editor were greatly improved, making it much easier to use alpha transparency.
2011, April: V8.1 changed the name to GameMaker (lacking a space) to avoid confusion with the 1991 software Game-Maker. The runtime was rewritten in #CPP to address performance concerns with previous versions. The file extension was changed to
.gm81.Because of competing projects such as G-Java, G-Creator, LateralGM, etc., the editable game files were encrypted since v.7.0. However, it was not long before the encryptions were broken.
— Summary from game-maker.nl