-
Notifications
You must be signed in to change notification settings - Fork 3
Naming Conventions
Naming conventions för kod. För kommentarer(Doxygen), se Dokumentation
#pragma once
class ClassName
{
public:
ClassName();
virtual ~ClassName();
virtual void foo(int p_bar);
protected:
private:
float m_member;
static s_magic;
};
Ordning: Public Protected Private
void ClassName::foo(int p_bar)
{
foo(p_bar);
}
struct Bar
{
int data;
}
struct Foo
{
enum
{
ONE,
TWO
};
};
..
Skapande av kolumner i koden. (?)
Jarl sez: Då nedanstående stycke inte är ett "niet" utan ett exempel på hur kolumner kan lösas snyggt mha gruppering, så föreslår jag att vi strukturerar om nedanstående senare för att få en ren definition. Btw, har githubs wiki en diskussionsfunktion likt wikipedias? :D
Varför? När raderna blir långa bli det väldigt svårt att se vilka "texter" som hänger ihop och vilka som inte gör det. Ex:
float a = 0;
int b = 0;
char c = 0;
float[3] d = {1,2,3}
float a = 0;
int b = 0;
char c = 0;
float[3] d = {1,2,3}
static const D3DXMATRIXA16RENDERTARGET* ma16rt = NULL
static vector<float> a();
int b();
float c();
char d();
unsigned int e();
long long f();
static const D3DXMATRIXA16RENDERTARGET* ma16rt();
Med lite vett kan det användas men har men det i klassdeklarationer blir det ofta som ovan, oläsligt.
Man kan då istället gruppera liknande grejer:
ctor();
virtual dtor();
static vector<float> a();
int b();
float c();
char d();
unsigned int e();
long long f();
static const D3DXMATRIXA16RENDERTARGET* ma16rt();
När man jobbar med structar blir det istället ofta mer läsligt då det visar för läsaren att saker faktiskt hänger ihop när de i själva verket ser ut att vara en del i en stor bit kodmassa. Ex:
float b = 5.0f;
top.a = 0.0f;
top.speed = 10.0f;
top.dist = 5.0f;
top.dir = vec3(1.0f, 0.0f, 0.0f);
int k =0;
vs:
float b = 5.0f;
top.a = 0.0f;
top.speed = 10.0f;
top.dist = 5.0f;
top.dir = vec3(1.0f, 0.0f, 0.0f);
int k =0;
Bara min två ören...
Den maximala kollumnbredden för ett dokument är 90 i bredd.
Varför just 90?
För då kan man med en 1920x1080 upplösning använda sig av två stycken dokument samtidigt plus Solution Explorer samt Power Tools Full Map Mode på båda dokumenten.