读书人

为什么小弟我的结构中使用string是不对

发布时间: 2013-01-28 11:49:56 作者: rapoo

为什么我的结构中使用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;
[解决办法]

引用:
#include<iostream>
#include<string>
struct CandyBar
{
char brand[20];
float weight;
int calories;
};
int main()
{
using namespace std;
CandyBar snack=
{……


那是当然了。 改成std::string后CandyBar就不再是一个POD(plain old data)了,就不能用CandyBar cb = {....};

C++ 11以后可能可以,统一的初始化器。

读书人网 >C++

热点推荐