| 
									
										
										
										
											2015-11-17 13:33:31 +01:00
										 |  |  | #include "cursor.h"
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void function(int x) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace Namespace | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | SuperClass::SuperClass(int x) noexcept | 
					
						
							|  |  |  |   : y(x) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int LocalVariable; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int SuperClass::Method() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     Method(); | 
					
						
							|  |  |  |     AbstractVirtualMethod(y); | 
					
						
							|  |  |  |     int LocalVariable; | 
					
						
							|  |  |  |     return y; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int SuperClass::VirtualMethod(int z) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     AbstractVirtualMethod(z); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     return y; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | bool SuperClass::ConstMethod() const | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return y; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void SuperClass::StaticMethod() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     using longint = long long int; | 
					
						
							|  |  |  |     using lint = longint; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     lint foo; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     foo = 30; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     const lint bar = 20; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | template <class T> | 
					
						
							|  |  |  | void TemplateFunction(T LocalVariableParameter) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     T LocalVariable; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Namespace::SuperClass::operator int() const | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int LocalVariable; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | int Namespace::SuperClass::operator ++() const | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int LocalVariable; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     return LocalVariable; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Namespace::SuperClass::~SuperClass() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int LocalVariable; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void Struct::FinalVirtualMethod() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void f1(Struct *FindFunctionCaller) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     FindFunctionCaller->FinalVirtualMethod(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void f2(){ | 
					
						
							|  |  |  |     Struct *s = new Struct; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     f1(s); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void f3() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     auto FindFunctionCaller = Struct(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     FindFunctionCaller.FinalVirtualMethod(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void f4() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     Struct s; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     auto *sPointer = &s; | 
					
						
							|  |  |  |     auto sValue = s; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void NonFinalStruct::function() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     FinalVirtualMethod(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void OutputFunction(int &out, int in = 1, const int &in2=2, int *out2=nullptr); | 
					
						
							|  |  |  | void InputFunction(const int &value); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void f5() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     int OutputValue; | 
					
						
							|  |  |  |     int InputValue = 20; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     OutputFunction(OutputValue); | 
					
						
							|  |  |  |     InputFunction(InputValue); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | void ArgumentCountZero(); | 
					
						
							|  |  |  | void ArgumentCountTwo(int one, const int &two); | 
					
						
							|  |  |  | void IntegerValue(int); | 
					
						
							|  |  |  | void LValueReference(int &); | 
					
						
							|  |  |  | void ConstLValueReference(const int &); | 
					
						
							|  |  |  | void PointerToConst(const int *); | 
					
						
							|  |  |  | void Pointer(int *); | 
					
						
							|  |  |  | void ConstantPointer(int *const); | 
					
						
							|  |  |  | void ConstIntegerValue(const int); | 
					
						
							| 
									
										
										
										
											2018-01-12 09:44:05 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | void NonFinalStruct::ProtectedMethodAccessSpecifier() {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern int ExternVarStorageClass; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static void StaticMethodStorageClass() {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | template<class T> const T &InvalidStorageClass(const T &type) { return type; } | 
					
						
							| 
									
										
										
										
											2019-01-16 12:04:48 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | namespace Outer { | 
					
						
							|  |  |  | namespace { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enum { | 
					
						
							|  |  |  |     X, Y | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | } |