wellcome_공부일기

01.08. C++ | 프로그래밍에서 지켜야 할 기본적 서식(Formatting) 본문

프로그래밍/C++

01.08. C++ | 프로그래밍에서 지켜야 할 기본적 서식(Formatting)

ma_heroine 2020. 4. 25. 01:14

<목차>

1. 기본적인 서식(formatting) 맞추기

2. 선언(declaration)과 정의(definition)의 분리

3. 변수 선언(variables declaration)은 어디에? 

 

 

기본적인 서식(formatting) 맞추기

기본적인 서식(formatting)은 규칙은 아니지만 프로그래머 사이에 아래 서식처럼 맞춘다면 효율적으로 코드 리뷰를 할 수 있습니다. 

#include <iostream>

using namespace std;

int main()
{   
    //1.
    int x                = 52;
    int my_love     = 2;
    int Boys$Girls = 728;
    
    
    //2.   
    cout << "Hello, " << "My " << "Name " << 
            "Is " << "Tyrannosaurus!" << endl;


    //3.
    //this is important 
    int a = 1 + 2;

    //this is important, too
    int b = 3 + 3;

    return 0;
}

- 빈칸(여백)과 주석은 컴파일러가 무시를 합니다. 

- 들여쓰기(indenting)은 컴파일러가 인식을 하기 때문에 함수 내에서 4칸 혹은 tab을 이용한 후, 코드를 작성해야 합니다. 

- 1번처럼 각 변수끼리의 등호를 맞춰주면 가독성이 높아집니다.

- 2번에서 줄바꿈하기 전에 operator( "<<", ">>" etc.)를 남겨주면 프로그래머가 코드가 안 끝났다는 것을 알 수 있습니다.

- 3번 예처럼 주석을 달 때는, 코드 라인의 위에 남겨주고 주석이 끝난 코드는 공백 한칸을 준 뒤 작성해줍니다. 

- 위 코드는 예시별로 보여주기 위해 2번씩 공백을 남겨두고 작성하였습니다. 

 

 

2. 선언(declaration)과 정의(definition)의 분리 

코드가 길어지고 함수가 많아지면, 어떤 함수를 사용했는지 확인하고 싶거나 원하는 함수를 찾기 힘들때가 있습니다.

그래서 미리 전방 선언(forward declaration)과 정의(definition)를 분리하여 사용한다면 프로그램 내 함수가 한번에 정리가 되며 커서 메뉴를 이용하여 쉽게 이동 가능합니다. 

#include <iostream>

using namespace std;

//forward declaration 
int add(int a, int b); 
int subtract(int a, int b);

//definition
int add(int a, int b)
{
	return a+b;
}

int subtract(int a, int b)
{
	return a-b;
}

int main(void) 
{
	cout << add(1,2);
	cout << subtract(4,3);
    
	return 0;
 }

- 전방 선언(forward declaration)을 하는 방법은 함수의 이름 라인을 복사하여 위에 선언을 해주시면 됩니다.

- 전방 선언(forward declaration)에 커서를 두고 메뉴의 "GO TO" 를 이용하면 해당 함수의 정의(definiton) 영역으로 이동할 수 있고 이 방법으로 정의 영역에서 선언(declaration) 영역으로도 이동할 수 있습니다. (아래는 CLion에서 실행한 사진 입니다.)

 

변수 선언(variables declaration)은 어디에?

사용할 변수는 사용하기 직전에 선언하는 것이 좋습니다.

예전에는 메모리를 실제로 다 계산할 수 있다는 장점과 등등의 여타적 이유로 프로그램 전방에 변수들을 내세워 사용하였다고 합니다. 

하지만 요즘에는 실제 변수를 사용하는 코드와 변수가 선언된 부분이 가까워야 디버깅하기가 편리합니다 . 서로 멀다면 코드 리뷰 혹은 컴파일러 디버깅 시 왔다갔다 할 일이 많아질 수 있습니다. 또한 변수 다음에 출력하는 부분이 묶여 있어야 변수와 출력문을 확인하기 수월합니다.  

 

 

 

 

 

 

* 해당 글은 홍정모님의 따라 배우는 C++를 공부한 바탕으로 작성되었습니다.

* CLion 컴파일러를 이용한 포스팅입니다. 

Comments