为什么我的结构中使用string是不对呢?
#include<iostream>
#include<string>
struct CandyBar
{
char brand[20];
float weight;
int calories;
};
在这个里
char bran[20];在后面就没有问题,但是如果我写成string brand;
就会出现错误,这是为什么啊? string struct
[解决办法]
gcc4.6.2编译没有什么问题,是不是楼主忘记了命名空间了呢,如果师兄string的话记得这么定义;std::string brand;
[解决办法]
那是当然了。 改成std::string后CandyBar就不再是一个POD(plain old data)了,就不能用CandyBar cb = {....};
C++ 11以后可能可以,统一的初始化器。