생성자에 정의 된 클래스 함수의 기본 인수

Simon

생성자에서 기본 인수로 사용할 변수를 정의 할 수 있습니까?

#include <iostream>
class Foo
{
public:
    Foo(int x) { num = x;}
    void print(int y = num)
    {
        std::cout << y << std::endl;
    }
private:
    static int num;
};
int main()
{
    Foo f(5);
    f.print();
}

이것은 컴파일되지만 링크 오류가 발생합니다. LNK2001 unresolved external symbol "private: static int Foo::num" (?num@Foo@@0HA)

Anastaciu

가능합니다. 클래스 외부에서 정적 변수를 선언 / 초기화하기 만하면됩니다.

라이브 데모

#include <iostream>

class Foo
{ 
    //..
};

int Foo::num; //<-- or 'int Foo::num = 0;'

int main()
{
    //...
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

jar 파일에 정의 된 기본 클래스 / 함수 사용

분류에서Dev

클래스 본문에 정의 된 인라인 친구 함수

분류에서Dev

기본 클래스에서 파생 된 클래스의 인스턴스를 함수로 전달

분류에서Dev

기본 클래스와 파생 클래스간에 분할 된 함수 오버로드의 가시성

분류에서Dev

기본 클래스 배열에서 재정의 된 함수 사용

분류에서Dev

기본 호출에서 파생 된 crtp 클래스의 함수에 액세스

분류에서Dev

인수 수에 따라 mixin 기본 클래스의 호출 생성자

분류에서Dev

C ++ 다형성 : 파생 클래스는 재정의 된 파생 클래스 대신 기본 클래스 가상 함수를 호출합니다.

분류에서Dev

C ++ 템플릿 : 기본 클래스에서 파생 된 템플릿 클래스의 멤버 함수 호출

분류에서Dev

abstact 기본 클래스에서 상속 된 클래스 인스턴스의 새 클래스 인스턴스 생성 / 리셋 클래스 인스턴스

분류에서Dev

boost :: bind는 순수 가상 기본 클래스에 정의 된 비 정적 함수 템플릿 멤버 유형에 바인딩 할 수 없습니다.

분류에서Dev

boto3에서 기본 클래스 함수 재정의

분류에서Dev

기본 클래스에서 함수 재정의

분류에서Dev

클래스 본문 외부에서 함수를 정의 할 때 C ++ 파생 생성자- "기본 생성자 없음"

분류에서Dev

상속 된 인수를 기본 클래스 생성자에 전달한 다음 파생 클래스 생성자에서 작업 수행

분류에서Dev

friend 함수의 기본 클래스 인수 유형에 대한 포인터

분류에서Dev

상속 된 클래스는 node.js ES6 스타일 클래스의 기본 클래스에 정의 된 변수를 사용할 수 없습니까?

분류에서Dev

기본 클래스의 배열에서 파생 함수 호출

분류에서Dev

수퍼 클래스의 인터페이스에 의해 정의 된 파생 클래스의 생성자 재정의

분류에서Dev

신속하게 기본 클래스에서 재정의 된 클래스 함수에 액세스 할 수 있습니까?

분류에서Dev

함수에서 var로 정의 된 클래스 수정

분류에서Dev

파생 클래스의 기본 생성자에서 기본 생성자로 인수를 전달할 수 있습니까?

분류에서Dev

상속 된 클래스 생성자 인수를 기본 생성자 인수로 전달

분류에서Dev

가상 기본 클래스 함수의 파생 클래스 크기

분류에서Dev

기본 클래스에서 파생 클래스 (인터페이스에서)의 함수 호출

분류에서Dev

파생 클래스에 도입 된 기본 멤버 함수 사용의 오버로드 해결

분류에서Dev

재정의 된 함수가 기본 클래스에 반영되지 않습니다. 이것은 정상적인 동작입니까?

분류에서Dev

파생 클래스에 의해 설정된 constexpr 기본 클래스 멤버

분류에서Dev

일반 클래스의 생성자에 잘못된 인수가 있습니다.

Related 관련 기사

  1. 1

    jar 파일에 정의 된 기본 클래스 / 함수 사용

  2. 2

    클래스 본문에 정의 된 인라인 친구 함수

  3. 3

    기본 클래스에서 파생 된 클래스의 인스턴스를 함수로 전달

  4. 4

    기본 클래스와 파생 클래스간에 분할 된 함수 오버로드의 가시성

  5. 5

    기본 클래스 배열에서 재정의 된 함수 사용

  6. 6

    기본 호출에서 파생 된 crtp 클래스의 함수에 액세스

  7. 7

    인수 수에 따라 mixin 기본 클래스의 호출 생성자

  8. 8

    C ++ 다형성 : 파생 클래스는 재정의 된 파생 클래스 대신 기본 클래스 가상 함수를 호출합니다.

  9. 9

    C ++ 템플릿 : 기본 클래스에서 파생 된 템플릿 클래스의 멤버 함수 호출

  10. 10

    abstact 기본 클래스에서 상속 된 클래스 인스턴스의 새 클래스 인스턴스 생성 / 리셋 클래스 인스턴스

  11. 11

    boost :: bind는 순수 가상 기본 클래스에 정의 된 비 정적 함수 템플릿 멤버 유형에 바인딩 할 수 없습니다.

  12. 12

    boto3에서 기본 클래스 함수 재정의

  13. 13

    기본 클래스에서 함수 재정의

  14. 14

    클래스 본문 외부에서 함수를 정의 할 때 C ++ 파생 생성자- "기본 생성자 없음"

  15. 15

    상속 된 인수를 기본 클래스 생성자에 전달한 다음 파생 클래스 생성자에서 작업 수행

  16. 16

    friend 함수의 기본 클래스 인수 유형에 대한 포인터

  17. 17

    상속 된 클래스는 node.js ES6 스타일 클래스의 기본 클래스에 정의 된 변수를 사용할 수 없습니까?

  18. 18

    기본 클래스의 배열에서 파생 함수 호출

  19. 19

    수퍼 클래스의 인터페이스에 의해 정의 된 파생 클래스의 생성자 재정의

  20. 20

    신속하게 기본 클래스에서 재정의 된 클래스 함수에 액세스 할 수 있습니까?

  21. 21

    함수에서 var로 정의 된 클래스 수정

  22. 22

    파생 클래스의 기본 생성자에서 기본 생성자로 인수를 전달할 수 있습니까?

  23. 23

    상속 된 클래스 생성자 인수를 기본 생성자 인수로 전달

  24. 24

    가상 기본 클래스 함수의 파생 클래스 크기

  25. 25

    기본 클래스에서 파생 클래스 (인터페이스에서)의 함수 호출

  26. 26

    파생 클래스에 도입 된 기본 멤버 함수 사용의 오버로드 해결

  27. 27

    재정의 된 함수가 기본 클래스에 반영되지 않습니다. 이것은 정상적인 동작입니까?

  28. 28

    파생 클래스에 의해 설정된 constexpr 기본 클래스 멤버

  29. 29

    일반 클래스의 생성자에 잘못된 인수가 있습니다.

뜨겁다태그

보관