«c++» 태그된 질문

C ++는 범용 프로그래밍 언어입니다. 원래 C에 대한 확장으로 설계되었으며 유사한 구문을 갖지만 이제는 완전히 다른 언어입니다. C ++ 컴파일러로 컴파일 된 코드에 대한 질문에이 태그를 사용하십시오. 특정 표준 개정 [C ++ 11], [C ++ 14], [C ++ 17] 또는 [C ++ 20] 등과 관련된 질문에 버전 별 태그를 사용하십시오.


5
const 참조 클래스 멤버는 임시 수명을 연장합니까?
왜 이런가요? #include <string> #include <iostream> using namespace std; class Sandbox { public: Sandbox(const string& n) : member(n) {} const string& member; }; int main() { Sandbox sandbox(string("four")); cout << "The answer is: " << sandbox.member << endl; return 0; } 다음을 출력하십시오. 정답은: 대신에: 답은 : 4

13
C ++에서 내가 먹지 않은 것에 대해 지불하고 있습니까?
C 및 C ++의 다음 hello world 예제를 고려하십시오. main.c #include <stdio.h> int main() { printf("Hello world\n"); return 0; } main.cpp #include <iostream> int main() { std::cout<<"Hello world"<<std::endl; return 0; } Godbolt에서 어셈블리로 컴파일 할 때 C 코드의 크기는 9 줄 ( gcc -O3)입니다. .LC0: .string "Hello world" main: sub …
170 c++  c 


5
operator &가 오버로드 될 때 어떻게 안정적으로 객체의 주소를 얻을 수 있습니까?
다음 프로그램을 고려하십시오. struct ghost { // ghosts like to pretend that they don't exist ghost* operator&() const volatile { return 0; } }; int main() { ghost clyde; ghost* clydes_address = &clyde; // darn; that's not clyde's address :'( } clyde의 주소 는 어떻게 얻 습니까? 모든 유형의 객체에 …

6
C ++ 11, 14, 17 또는 20은 파이에 대한 표준 상수를 도입합니까?
C와 C ++의 숫자 pi에는 다소 어리석은 문제가 있습니다. 멀리로 나는 알고 M_PI에 정의 된 math.h표준에 의해 필요하지 않습니다. 새로운 C ++ 표준은 표준 라이브러리에서 쌍곡선 함수 std::hermite및 std::cyl_bessel_i다른 난수 생성기 등 의 복잡한 수학을 많이 도입했습니다 . '새로운'표준 중 어떤 것이 파이에 대한 상수를 가져 왔습니까? 그렇지 않은 경우-왜? …



4
소스 제어에 .vcxproj.filter 파일을 추가해야합니까?
Visual Studio 2010 Beta 2를 평가하는 동안 변환 된 디렉토리에서 vcproj 파일이 vcxproj 파일 이되었습니다 . 폴더 구조에 대한 설명 (\ Source Files, \ Header Files 등)을 포함하는 것처럼 보이는 각 프로젝트와 함께 vcxproj.filter 파일 도 있습니다. 이러한 필터 파일을 사용자별로 유지해야합니까, 아니면 전체 dev 그룹에서 공유하고 SCC에 체크인해야한다고 생각하십니까? …

1
더블을 32 비트 정수로 반올림하는 빠른 방법 설명
Lua의 소스 코드를 읽을 때 Lua가 a macro를 사용 double하여 32 비트로 반올림하는 것을 알았 습니다 int. 을 추출하면 macro다음과 같습니다. union i_cast {double d; int i[2]}; #define double2int(i, d, t) \ {volatile union i_cast u; u.d = (d) + 6755399441055744.0; \ (i) = (t)u.i[ENDIANLOC];} 여기서 엔디안 , 리틀 엔디안, …


2
공개 친구 교환 회원 기능
copy-and-swap-idiom에 대한 아름다운 대답 에는 약간의 도움이 필요한 코드가 있습니다. class dumb_array { public: // ... friend void swap(dumb_array& first, dumb_array& second) // nothrow { using std::swap; swap(first.mSize, second.mSize); swap(first.mArray, second.mArray); } // ... }; 그리고 그는 메모를 추가 우리는 std :: swap을 우리 유형에 특화하고, 무료 기능 스왑과 함께 …

6
한 클래스에서 멤버 함수와 함께 일반 std :: function 객체 사용
한 클래스의 경우 하나의 map저장 std::function객체 에 동일한 클래스의 멤버 함수에 대한 일부 함수 포인터를 저장하려고 합니다. 그러나 나는이 코드로 시작하자마자 실패합니다. class Foo { public: void doSomething() {} void bindFunction() { // ERROR std::function<void(void)> f = &Foo::doSomething; } }; 내가받을 error C2064: term does not evaluate to a function …

3
기본 생성자와 소멸자에서 "= default"는 "{}"과 어떻게 다릅니 까?
나는 원래 이것을 소멸자에 대한 질문으로 만 게시했지만 이제 기본 생성자를 고려하고 있습니다. 원래 질문은 다음과 같습니다. 클래스에 가상의 소멸자를 제공하고 싶지만 컴파일러가 생성하는 것과 동일한 소멸자를 제공하려면 =default다음을 사용할 수 있습니다 . class Widget { public: virtual ~Widget() = default; }; 그러나 빈 정의를 사용하여 타이핑을 줄이면 동일한 효과를 …

8
클래스 코드를 헤더와 cpp 파일로 분리
간단한 클래스의 구현 및 선언 코드를 새로운 헤더 및 cpp 파일로 분리하는 방법에 대해 혼란스러워합니다. 예를 들어 다음 클래스의 코드를 어떻게 분리합니까? class A2DD { private: int gx; int gy; public: A2DD(int x,int y) { gx = x; gy = y; } int getSum() { return gx + gy; } …
169 c++  oop  class 

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