생성자가 초기화되면 객체의 배열을 어떻게 초기화 할 수 있습니까? C ++

IzonFreak

다음과 같은 수업이 있습니다.

#include <string>
using std::string;

class cOb
{
private:
    string var1;
    int    var2;
    int    var3;

public:
    cOb(string v1, int v2, int v3);
};

cOb::cOb(string v1, int v2, int v3)
{
    var1 = v1;
    var2 = v2;
    var3 = v3;
}

int main()
{
    string x = "Somethin";
    int y = 0, z = 10;
    cOb object1(x,y,z);
}

하지만이 클래스의 객체 배열을 다음과 같이 만들려고하면 :

cOb aObjects[10]("" ,0 ,0 );

컴파일러가 불평하고이 오류를 제공합니다.

error: bad array initializer

모든 객체를 초기화 할 필요가 없도록 기본값을 생성하거나이 배열을 올바른 방법으로 초기화하려면 어떻게해야합니까?

MM

당신은 쓸 수 있습니다:

cOb Objects[10] = { cOb("x", 0, 0), cOb("y", 1, 1),  /* etc. */  };

모든 객체를 초기화하는 데 사용되는 단일 기본값을 지정할 수 없습니다. 그렇게하려면 기본 생성자를 cOb. 이를 수행하는 가장 간단한 방법은 기존 생성자의 인수에 기본값을 제공하는 것입니다.

cOb (string v1 = "", int v2 = 0, int v3 = 0 );

그러나 std::vectorC 스타일 배열 대신 컨테이너로 사용하는 경우 기본값을 전달할 수 있습니다.

std::vector<cOb> Objects( 10, cOb("x", 0, 0) );

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

생성자가 초기화되면 객체의 배열을 어떻게 초기화 할 수 있습니까? C ++

객체 데이터가 C ++ 생성자에서 잘못된 순서로 초기화되면 어떤 종류의 버그가 발생할 수 있습니까?

객체 배열을 어떻게 초기화 할 수 있습니까?

생성자에서 C ++ 개체 멤버 변수를 어떻게 초기화 할 수 있습니까?

쉽게 구성 할 수없는 객체의 배열을 초기화합니다.

wx.App이 생성되기 전에 wx.Font 객체를 어떻게 초기화 할 수 있습니까?

고유 포인터로 초기화 된 동적 배열에 문자열 (n 줄의 파일에서)을 어떻게 저장할 수 있습니까? C ++

키가 객체 인 파이썬에서 사전을 어떻게 초기화 할 수 있습니까?

배열 필드의 요소를 어떻게 초기화 할 수 있습니까?

Java에서 길이가 0 인 문자열 배열을 어떻게 초기화 할 수 있습니까?

배열에서 문자열 벡터를 초기화 할 수 있습니까? 그렇다면 어떻게?

Substrate 블록 체인에서 사용자의 잔액을 어떻게 초기화 할 수 있습니까?

초기화 목록에서 생성자 다음에 변수/객체를 어떻게 초기화할 수 있습니까?

C에서 구조체를 어떻게 초기화 할 수 있습니까?

내 사람 구조의 문자열을 어떻게 초기화 할 수 있습니까?

초기화 후 DataTables의 데이터 배열을 어떻게 변경할 수 있습니까?

Swift에서 일반적인 가변 배열을 어떻게 초기화 할 수 있습니까?

생성자의 초기화 목록에서 새 객체를 초기화하고 참조 할 수 있습니까?

구조체 초기화의 중첩 배열 : 두 구조체 모두에 대한 생성자를 사용할 수있는 경우 어떻게해야합니까?

새 pyqt 창을 어떻게 초기화 할 수 있습니까?

init () 중에 객체 초기화를 어떻게 취소 할 수 있습니까?

div_t 객체를 어떻게 초기화 할 수 있습니까?

초기화 된 객체를 어떻게 전달할 수 있습니까?

JavaScript의 생성자에서 객체 배열을 어떻게 초기화합니까?

생성자없이 다른 객체 초기화 내에서 객체를 초기화 할 수 있습니까?

C : 왜 중괄호가있는 배열 내부의 구조체를 초기화 할 수 없습니까?

다른 크기의 문자열 리터럴을 사용하여 주어진 크기로 정적 char 배열을 초기화하면 정의되지 않은 동작이 발생할 수 있습니까?

내 수업을 어떻게 나열-초기화 할 수 있습니까?

구조체 객체와 함께 사용하면 배열을 초기화 할 수 있습니까? | 씨#

TOP 리스트

  1. 1

    C # 16 진수 값 0x12는 잘못된 문자입니다.

  2. 2

    Matlab의 반복 Sortino 비율

  3. 3

    Python의 csv 파일에서 첫 번째 열 삭제

  4. 4

    개체 참조가 개체의 인스턴스로 설정되지 않았습니까? (예외 오류 ~ ASP.NET MVC)

  5. 5

    atob은 인코딩 된 base64 문자열을 디코딩하지 않습니다.

  6. 6

    EventEmitter <string>의 컨텍스트 'this'가 Observable <string> 유형의 'this'메서드에 할당되지 않았습니다.

  7. 7

    병합 셀을 사용하여 워크 시트의 데이터 필터링

  8. 8

    PhpStorm 중단 점에서 변수 값을 볼 수 없습니다.

  9. 9

    jQuery에서 이벤트 핸들러를 제거하는 가장 좋은 방법은 무엇입니까?

  10. 10

    `@ Transactional`이 있음에도 불구하고 이러한 데이터베이스 수정 사항이 롤백되지 않는 이유는 무엇입니까?

  11. 11

    ssh를 사용하여 원격에서 로컬로 파일 복사

  12. 12

    종속 사용자 정의 Lightning 선택 목록 Level2 및 Level3을 설정한 다음 Lightning 구성 요소에서 Level2를 재설정하지만 Level2 캐시 데이터가 저장됨

  13. 13

    2 개의 이미지를 단일 평면 이미지로 결합

  14. 14

    팝업처럼 위젯을 표시하는 방법

  15. 15

    [해결] 쿠키 설정 SameSite = Chrome / JSP, JAVASCRIPT에서 작동하지 않습니다.

  16. 16

    버튼 클릭을 기반으로 특정 CSS 클래스를 추가하는 방법은 무엇입니까?

  17. 17

    React 구성 요소가 자동으로 초기 상태로 다시 렌더링됩니다.

  18. 18

    연결된 서버 쿼리는 작동하지만 동일한 OPENQUERY는 "sys.servers에서 서버 'SERVER'를 찾을 수 없습니다.

  19. 19

    파일 2의 파일 1에서 동일한 줄을 조건으로 바꿉니다.

  20. 20

    아이디어 Intellij : 종속성 org.json : json : 20180813을 찾을 수 없음, maven에서 org.json 라이브러리를 가져올 수 없음

  21. 21

    상황에 맞는 메뉴 색상

뜨겁다태그

보관