내가 형태구조체가
class X
{
public:
//class functions
private:
A_type *A;
//other class variables
};
및 구조체 A_type 생성자 내부
struct A_type
{
string s1,s2,s3;
};
로 정의의 클래스 정의를 가지고, 내가 A에 대한 적절한 메모리를 할당하고 A [0 시도 ] .s1 = "somestring"; 세그먼트 화 오류가 표시됩니다. 는 선언의 이런 종류의 잘못인가, 아니면
편집 뭔가 놓치고 : OP에서 새로운 코드는 '메모리를 할당'무엇을 의미합니까 코멘트 [neilb]
#include <stdio.h>
#include <math.h>
#include <string>
#include <iostream>
using namespace std;
struct HMMStruct { string a; };
HMMStruct *HMMs;
int main() {
HMMs=(HMMStruct*)malloc(sizeof(HMMStruct)*2);
HMMs[0].a="sdfasasdsdfg";
cout << HMMs[0].a << endl;
}
더 많은 코드를 게시해야합니다. 어떻게 메모리를 할당하고 있습니까? 클래스 X를 어떻게 인스턴스화합니까? –
"적절한 메모리 할당"이란 무엇을 의미합니까? 당신은 malloc이 아닌 새로운 것을 사용하고 있습니까? –
전체 코드를 게시 할 수 있습니까? 귀하의 설명에 따라 가능한 여러 가지 문제가 있습니다. –