기타 사회 호기심 ... C++ 문장
천 년 전 내가 처음으로 C 및 C++ 클래스를 tokk 때 단순한 오백년 전에 처음으로 프로그래밍 클래스 (포트란 66) 등을 가지고 갈 때, 언어 전반에 걸쳐 꽤 표준적인 구두점 연습이있었습니다. 나는 Basic (떨림), PL/1, PL/AS, Rexx 심지어 파스칼에서 그들을 보았다. 좋습니다, APL2는이 토론의 일부가 아닙니다.각 언어에는 고유 한 구두점이 있습니다. 파스칼의 시대는 Fortran의 쉼표로 구분 된 do 루프입니다. 거의 모든 사람의 세미콜론입니다. 내가 배운 것처럼
, 각 언어는 키워드가 (위해 수행하는 경우, 동안 등까지) 공백 (또는 왼쪽 여백) < 공간 등 > < 경우 공간 >에 의해 출발하는
각 언어에는 함수 호출, 호출 된 함수의 서브 루틴이 있습니다. 일부 내장 된 일부 사용자 코드. 그들은 < 공백없이 왼쪽 여백 > function_name (매개 변수);에 의해 출발했다. sqrt (x) 또는 rand (y)에서와 같이;
최근에는 구두점 규칙이 새로 추가 된 것으로 보입니다. 특히 C++에서 변수 선언의 끝 부분에 이니셜 라이저가 붙는 곳 int x (0); 또는 auto_ptr <p> p (새 기즈모); 이것은 누군가가 함수 prototoye를 선언하거나 함수를 정수로 사용한다고 생각하게한다. (허?).
그런 다음 "if"와 "for"가 괄호로 자란 것처럼 보입니다. if (true) for (;;) 등 키워드가 언제 기능을 수행했는지.
마지막으로 함수가 괄호를 벗긴 것처럼 보입니다.
질문 : 언제 옛날 방식이 사라졌고이 새로운 방식이 유행에 들어갔습니까? 내 옆에있는 사람이 읽는 것을 짜증나게하고 구두점을 배치하는 데 사용 된 정보가 없어 졌습니까? 나는 K & R이 "if"나 "for"의 끝 부분에 바이트를 저장하기 위해 {을 넣었다. 그 변명을 여기에서 사용할 수 없습니다. 하드 디스크 공간이 100 MiB를 넘어 서서 가독성 손실에 대한 핑계로 죽었다.
귀하의 의견을 듣고 있습니다. 이렇게하는 것이 좋은 이유가 있다면, 기꺼이 배울 것이고, 아마도 50 년 후에 익숙해 질 것입니다. 물론 컴파일러가 이러한 (IMHO) 오자를 인식하고 계속 진행하는 것이 좋지만, 그렇게 코딩 할 수 있기 때문에 당신이 할 수있는 것은 아닙니다. 맞습니까?
감사합니다.
이것은 프로그래머에 속합니다. – bitmask
코드가 기본 표준을 따르는 한 IMHO는 설명적인 변수 이름과 멋진 깨끗한 코드를 가지고 있습니다. 또한 의견! 의견이 있어야합니다! – Rhexis
"실제 프로그래밍 질문보다 사회적 호기심이 더 많습니다 ..."이것이 주제를 벗어난 주제입니다. –