Learning several script/programming languages at the same time.
- Types
- Operators
- Control flow
- Strings
- Arrays
- Functions
- Enums
- Structures
- Unions
- Classes
- Pointers
- Exceptions
- Templates
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Enums | enums.pas | enums.cpp | Enums.java | Enums.cs | -- | -- | enums.php | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Structures | records.pas | structures.cpp | -- | structures.cs | -- | -- | -- | -- | -- |
Default access level in inheritance | -- | default_structure_inheritance_access_level.cpp | -- | -- | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Unions | -- | unions.cpp | -- | -- | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Explicit constructor | -- | explicit_constructor.cpp | -- | -- | -- | -- | -- | -- | -- |
Converting constructor | -- | converting_constructor.cpp | ConvertingConstructor.java | ConvertingConstructor.cs | -- | -- | -- | -- | -- |
Conversion operator | -- | conversion_operator.cpp | -- | ConversionOperators.cs | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Single argument minus operator | -- | nonmember_single_argument_minus_operator.cpp member_single_argument_minus_operator.cpp |
-- | SingleArgumentMinusOperator.cs | -- | -- | -- | single_argument_minus_operator.rb | -- |
Double argument plus operator | -- | nonmember_double_argument_plus_operator.cpp member_double_argument_plus_operator.cpp |
-- | DoubleArgumentPlusOperator.cs | -- | -- | -- | double_argument_plus_operator.rb | -- |
Assignment operator | -- | assignment_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Preincrement operator | -- | preincrement_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Predecrement operator | -- | predecrement_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Postincrement operator | -- | postincrement_operator.cpp | -- | IncrementOperator.cs | -- | -- | -- | -- | -- |
Postdecrement operator | -- | postdecrement_operator.cpp | -- | DecrementOperator.cs | -- | -- | -- | -- | -- |
Subscription operator | -- | subscripting_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Call operator | -- | call_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Arrow operator | -- | arrow_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Reading from stream operator | -- | reading_from_stream_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Writing to stream operator | -- | writing_to_stream_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
New and delete operators | -- | new_and_delete_operators.cpp | -- | -- | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Abstract class | -- | abstract_class.cpp | AbstractClass.java | AbstractClass.cs | -- | -- | abstract_class.php | -- | -- |
Abstract functions | -- | abstract_functions.cpp | AbstractFunctions.java | AbstractFunctions.cs | -- | -- | abstract_functions.php | -- | -- |
Abstract functions with implementation | -- | abstract_functions_with_implementation.cpp | -- | -- | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Interface | -- | -- | Interface.java | Interface.cs | -- | -- | interface.php | -- | -- |
Interface extending interface | -- | -- | InterfaceExtendingInterface.java | InterfaceExtendingInterface.cs | -- | -- | interface_extending_interface.php | -- | -- |
Implementing multiple interfaces | -- | -- | ImplementingMultipleInterfaces.java | ImplementingMultipleInterfaces.cs | -- | -- | implementing_multiple_interfaces.php | -- | -- |
Interface and abstract class | -- | -- | InterfaceAndAbstractClass.java | InterfaceAndAbstractClass.cs | -- | -- | interface_and_abstract_class.php | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Mixins | -- | -- | -- | -- | -- | -- | -- | mixin.rb | -- |
Mixin including mixin | -- | -- | -- | -- | -- | -- | -- | mixin_including_mixin.rb | -- |
Including multiple mixins | -- | -- | -- | -- | -- | -- | -- | including_multiple_mixins.rb | -- |
Diamond problem | -- | -- | -- | -- | -- | -- | -- | diamond_problem.rb | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Pointers and types | pointers_and_types.pas | pointers_and_types.cpp | -- | -- | -- | -- | -- | -- | -- |
Pointers definition, initialisation and assignment | definition_initialisation_and_assignment.pas | definition_initialisation_and_assignment.cpp | -- | -- | -- | -- | -- | -- | -- |
Address, indirection, reference and dereference | -- | address_indirection_reference_and_dereference.cpp | -- | -- | -- | -- | -- | -- | -- |
Pointers as r- and l-values | r_and_l_value.pas | r_and_l_value.cpp | -- | -- | -- | -- | -- | -- | -- |
Operator reinterpret_cast | -- | operator_reinterpret_cast.cpp | -- | -- | -- | -- | -- | -- | -- |
Void pointer | -- | void_pointer.cpp | -- | -- | -- | -- | -- | -- | -- |
Operations on arrays with pointers | -- | operations_on_arrays.cpp | -- | -- | -- | -- | -- | -- | -- |
Operations on pointers | -- | operations_on_pointers.cpp | -- | -- | -- | -- | -- | -- | -- |
Comparing pointers | comparing_pointers.pas | comparing_pointers.cpp | -- | -- | -- | -- | -- | -- | -- |
Passing scalar arguments to the function by a pointer | -- | passing_scalar_arguments_to_function_by_pointer.cpp | -- | -- | -- | -- | -- | -- | -- |
Passing array arguments to the function by a pointer | -- | passing_array_arguments_to_function_by_pointer.cpp | -- | -- | -- | -- | -- | -- | -- |
Passing arguments to the function by a pointer to a constans | -- | passing_arguments_to_function_by_pointer_to_const.cpp | -- | -- | -- | -- | -- | -- | -- |
Passing constans arguments to the function by a pointer | -- | passing_const_arguments_to_function_by_pointer.cpp | -- | -- | -- | -- | -- | -- | -- |
Address access by pointer | address_access.pas | address_access.cpp | -- | -- | -- | -- | -- | -- | -- |
Operators new and delete working with pointers | -- | operators_new_and_delete.cpp | -- | -- | -- | -- | -- | -- | -- |
Returning a pointer by the function | -- | returning_pointer_by_function.cpp | -- | -- | -- | -- | -- | -- | -- |
Operator new with initialisation | -- | operator_new_with_initialisation.cpp | -- | -- | -- | -- | -- | -- | -- |
Dynamic memory allocation with the mew operator | -- | dynamic_memory_allocation.cpp | -- | -- | -- | -- | -- | -- | -- |
Operations on multidimensional arrays with pointers | -- | operations_on_multidimensional_arrays.cpp | -- | -- | -- | -- | -- | -- | -- |
Placement new operator | -- | placement_new_operator.cpp | -- | -- | -- | -- | -- | -- | -- |
Memory allocation failure handling: the pointer with value 0 | -- | memory_allocation_failure_handling_pointer_zero.cpp | -- | -- | -- | -- | -- | -- | -- |
Memory allocation failure handling: std::bad_alloc exception | -- | memory_allocation_failure_handling_bad_alloc.cpp | -- | -- | -- | -- | -- | -- | -- |
Memory allocation failure handling: std::set_new_handler function | -- | memory_allocation_failure_handling_set_new_handler.cpp | -- | -- | -- | -- | -- | -- | -- |
Constant pointers and pointers to the constants | -- | const_pointers_and_pointers_to_const.cpp | -- | -- | -- | -- | -- | -- | -- |
Default pointer value | -- | default_pointer_value.cpp | -- | -- | -- | -- | -- | -- | -- |
Ways of setting pointers | setting_pointers.pas | setting_pointers.cpp | -- | -- | -- | -- | -- | -- | -- |
Operator const_cast | -- | operator_const_cast.cpp | -- | -- | -- | -- | -- | -- | -- |
Arrays of pointers | -- | arrays_of_pointers.cpp | -- | -- | -- | -- | -- | -- | -- |
Function pointers | -- | function_pointers.cpp | -- | -- | -- | -- | -- | -- | -- |
Pascal | C++ | Java | C# | JavaScript | Perl | PHP | Ruby | Python | |
---|---|---|---|---|---|---|---|---|---|
Function template | -- | function_template.cpp | -- | -- | -- | -- | -- | -- | -- |
Class template | -- | class_template.cpp | -- | -- | -- | -- | -- | -- | -- |