尝试定义静态结构实例时,“ class MyClass”未命名类型

时间:2019-07-18 21:24:51

标签: c++ c++11

我正在尝试定义/声明一个静态结构实例,但是在使用test.cc:3:1: error: ‘mine’ in ‘class MyClass’ does not name a type进行编译时,我总是收到错误g++ -std=c++11 -g -Wall -c test.cc

这是我的代码的样子:

//test.h
#ifndef TEST_H
#define TEST_H

#include <stdint.h>

struct my_struct {
    uint8_t foo;
    uint8_t bar;
};

class MyClass {
public:
    static const struct my_struct mine;
};


#endif
//test.cc
#include "test.h"

MyClass::mine = {1, 2}; 

1 个答案:

答案 0 :(得分:0)

在C语言中,您需要使用struct StructName声明一个对象。

但是在C ++中,structclass都不需要声明。