2013-03-25 2 views
0

정의 뒤에 범위 생성자 (: :)를 사용하지 않고 클래스 생성자를 정의 할 수 있습니까?C++ 클래스 생성자 정의 안에?

다른 방법으로 설명 하겠지만, 클래스 정의 안에 생성자를 넣을 수 있습니까 ??? 이와 유사한

뭔가 : 네 당신이 할 수있는

MyClass { 

public: 
    int attribute1; 
    ... 

    MyClass(int a) { 
     attrbute1 = a; 
    } 
}; 
+4

예, 생성자가 정의 할 수 있습니다 인라인 : – StoryTeller

답변

5

.

클래스 선언 내에 모든 메소드를 정의 할 수 있습니다.

+2

순수한 가상의 것들을 제외하고 :) – StoryTeller

+2

@StoryTeller;) 나는 OP가 말괄량이를 얻을 것이라고 생각하지 않는다. – alestanis

+1

아마, 아마. 그러나 그것이 언급하는 것이 재미있는 이유입니다.) – StoryTeller

2

용어 : 당신은 대답은 '예 선언 의 내부 C++ 클래스 생성자를 정의 할. 답변을 찾으려면 StackOverflow에 요청해서는 안됩니다. C++ 컴파일러에게 문의해야합니다.

class MyClass 
{ 

private: 
    int attribute1; 
    ... 
public: 
    MyClass(int a) : attribute1(a) {} 
}; 
+1

용어 설명 : ... 클래스 정의 내부 ... 클래스 선언은 다음과 같습니다. class MyClass; – sellibitze

0

는 초기화 목록을 사용합니다.
+0

무엇? 그의 질문에 대한 대답은 무엇입니까? – JBentley