|
|
|
|
|
by WalterBright
2757 days ago
|
|
1. Template syntax. For example, a struct template in D is: struct S(T) { ... }
A function template is: T func(T)(T t) { ... }
2. No forward reference declarations required. This cuts down on a mass of unnecessary boilerplate. Even better, it allows the coding style of ordering the functions from most important to least important, rather than the reverse that is typical of C/C++ source files.3. Terser declarations: ulong x;
instead of: unsigned long long x;
4. No ugly #preprocessor code interspersed with your nicely formatted code.5. Nested functions mean they can be nestled close to where they are used rather than much further away in the file. 6. None of that awful #ifndef __INCLUDED_FOO_H
#define __INCLUDED_FOO_H
...
#endif
|
|