«c++» 태그된 질문

정적 타입, 자유 형식, 다중 패러다임, 컴파일 된 범용 프로그래밍 언어 인 C ++에 대한 질문.

7
한 줄에 변수를 선언하고 다음 줄에 변수를 할당하는 이유는 무엇입니까?
나는 종종 C 및 C ++ 코드에서 다음과 같은 규칙을 봅니다. some_type val; val = something; some_type *ptr = NULL; ptr = &something_else; 대신에 some_type val = something; some_type *ptr = &something_else; 처음에는 이것이 범위의 맨 위에 모든 지역 변수를 선언해야했던 시절부터 남은 습관이라고 가정했습니다. 그러나 나는 베테랑 개발자의 습관을 …
101 c++  c 

14
컴파일러 최적화에 의존하는 코드를 작성하는 것은 나쁜 습관입니까?
나는 C ++을 배우고 있었고 종종 함수 내에서 생성 된 함수에서 큰 객체를 반환해야합니다. 참조로 전달하고 포인터를 반환하고 참조 유형 솔루션을 반환한다는 것을 알고 있지만 C ++ 컴파일러 (및 C ++ 표준)는 반환 값 최적화를 허용하여 메모리를 통해 이러한 큰 객체를 복사하지 않도록합니다. 모든 시간과 메모리를 절약 할 수 있습니다. …
99 c++  performance 


8
최신 C ++가 C #을 대체합니까? Microsoft는 개발자에게 C ++을 채택하도록 추진하고 있습니까? [닫은]
현대 C ++ 인기에 대해 듣고 C # 또는 다른 C 유사 언어에서 C ++로 다시 마이그레이션하는 것에 대해 이야기합니다. C ++ 11 기능에 대해 알고 있지만 특히 C #에서 C ++로 마이그레이션 한 개발자의 경험을 듣고 싶습니다. 더 중요한 것은 Microsoft가 개발자에게 C ++을 사용하도록 강요합니까? 그렇다면 왜 그렇습니까?
91 c#  c++ 

8
헤더 파일이나 소스 파일에 함수를 문서화하는 것이 더 낫습니까?
"소스"와 "헤더"파일 (주로 C와 C ++)을 구분하는 언어에서는 헤더 파일에 함수를 문서화하는 것이 좋습니다. ( CCAN 에서 인용 ) /** * time_now - return the current time * * Example: * printf("Now is %lu seconds since epoch\n", (long)time_now().tv_sec); */ struct timeval time_now(void); 또는 소스 파일에서? (PostgreSQL에서 인용) /* * Convert …
86 c++  c  headers 

11
Java 개발자가 의식적으로 RAII를 포기 했습니까?
오랜 C # 프로그래머 인 저는 최근에 RAII ( Resource Acquisition Is Initialization) 의 장점에 대해 더 많이 알게되었습니다 . 특히 C # 관용구를 발견했습니다. using (var dbConn = new DbConnection(connStr)) { // do stuff with dbConn } C ++에 해당합니다. { DbConnection dbConn(connStr); // do stuff with dbConn } …
82 java  c#  c++  language-design 

15
Java가 C ++보다 빠른 이유는 무엇입니까?
때로는 Java가 벤치 마크에서 C ++보다 성능이 뛰어납니다. 물론 C ++보다 성능이 뛰어납니다. 다음 링크를 참조하십시오. http://keithlea.com/javabench/ http://blog.dhananjaynene.com/2008/07/performance-comparison-c-java-python-ruby-jython-jruby-groovy/ http://blog.cfelde.com/2010/06/c-vs-java-performance/ 그러나 이것이 어떻게 가능합니까? 해석 된 바이트 코드가 컴파일 된 언어보다 빠를 수 있다고 생각합니다. 누군가 설명해 주시겠습니까? 감사!
79 java  c++  performance 

5
C 및 C ++ 용 패키지 관리 시스템이없는 이유는 무엇입니까? [닫은]
패키지 관리 시스템에는 몇 가지 프로그래밍 언어가 있습니다. TeX 용 CTAN Perl 용 CPAN 파이썬을위한 핍 & 계란 메이븐 Java 용 음모 하스켈에 대한 루비를위한 보석 NodeJS의 npm 프론트 엔드 자바 스크립트 및 CSS 용 정자 C #에 대한 너겟 PHP를위한 작곡가 그러한 시스템에 다른 언어가 있습니까? C와 C ++는 …
78 c++  c  builds  packages 

20
최적화 된 코드를 읽을 수있는 코드로 교체해도 괜찮습니까?
때로는 기존 코드를 확장 / 개선 해야하는 상황이 발생할 수 있습니다. 이전 코드는 매우 간결하지만 확장하기가 어렵고 읽는 데 시간이 걸립니다. 현대 코드로 바꾸는 것이 좋은 생각입니까? 얼마 전 저는 린 접근법을 좋아했지만 이제는 더 높은 추상화, 더 나은 인터페이스 및 더 읽기 쉽고 확장 가능한 코드를 선호하여 많은 최적화를 …

12
절차 적 프로그래밍에 비해 객체 지향 프로그래밍의 이점은 무엇입니까?
C와 같은 절차 언어와 C ++과 같은 객체 지향 언어의 차이점을 이해하려고합니다. 나는 C ++을 사용한 적이 없지만 두 사람을 구별하는 방법에 대해 친구들과 논의했습니다. C ++에는 객체 지향 개념뿐만 아니라 변수 정의를위한 공용 및 개인 모드가 있다고 들었습니다 .C에는없는 것들. Visual Basic.NET에서 프로그램을 개발할 때 이것들을 사용하지 않아도됩니다. 이것들의 …

11
C ++에서 모든 객체의 기본이 권장되지 않는 이유
Stroustrup은 "모든 클래스 (객체 클래스)에 대한 고유 한 기반을 즉시 발명하지 마십시오. 일반적으로 대부분 / 대부분의 클래스를 사용하지 않고도 더 잘 수행 할 수 있습니다." (C ++ 프로그래밍 언어 제 4 판, 1.3.4 절) 모든 것을위한 기본 클래스가 일반적으로 나쁜 생각 인 이유는 무엇이며 언제 만드는 것이 합리적입니까?

3
파이썬이 C ++가 아닌 C로 작성된 이유는 무엇입니까?
에서 파이썬의 튜토리얼 하나는 파이썬의 원래 구현은 C에 있음을 읽을 수있다; 반면에 C로 작성된 Python 구현은 (...) 파이썬이 C ++가 아닌 C로 작성된 이유가 무엇인지 궁금합니다. 이 결정의 근거가되는 이유를 알고 싶습니다. 답변은 역사적 참고 자료로 뒷받침되어야합니다 (의견이 아닌).

6
`catch (…)인가? {throw; }`나쁜 습관?
다시 ... 던지지 않고 잡는 것이 실제로 잘못되었다는 것에 동의 하지만, 나는 다음과 같은 구문을 사용한다고 생각합니다. try { // Stuff } catch (...) { // Some cleanup throw; } RAII가 적용되지 않는 경우 허용됩니다 . (제발, 제발 묻지 마십시오. 우리 회사의 모든 사람이 객체 지향 프로그래밍을 좋아하지는 않으며 RAII는 …
74 c++ 


3
새로운 코드에서 C ++ 17의 [[nodiscard]]를 거의 모든 곳에서 사용하지 않는 이유는 무엇입니까?
C ++ 17은 [[nodiscard]]속성을 도입하여 프로그래머가 반환 된 객체를 호출자가 버릴 경우 컴파일러가 경고를 생성하는 방식으로 함수를 표시 할 수 있습니다. 전체 클래스 유형에 동일한 속성을 추가 할 수 있습니다. 원래 제안 에서이 기능의 동기에 대해 읽었 으며 C ++ 20은 표준 값에 속성을 추가한다는 것을 알고 있습니다 std::vector::empty. 시원하고 …
70 c++ 

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.