读书人

看看这么用STL,该怎么解决

发布时间: 2012-02-23 22:01:35 作者: rapoo

看看这么用STL
看了老大回的一个帖子
#include <iostream>
#include <algorithm>
using namespace std;

struct MyStruct {
int a;
int b;
};


int main() {
MyStruct* structs = new MyStruct[100];
MyStruct initializer = {20, 30};
fill(structs, structs + 100, initializer);

cout << structs[50].a << endl;
cout << structs[50].b << endl;

return 0;
}
我用普通char类型为什么不行啊

#include <iostream>
#include <algorithm>
using namespace std;

int main() {
char* ch=new char[100];
char * initializer = {'a'};
fill(ch, ch + 100, initializer);

cout<<ch[2];
return 0;
}

这么用为什么不行啊,是不是我写错了。

[解决办法]
类型没对上。
MyStruct initializer = {20, 30};
=>
char initializer = 'a';
[解决办法]

引用楼主 lily604 的帖子:
这么用为什么不行啊,是不是我写错了。

[解决办法]
char * initializer = {'a'}; 显然有问题啊!
char initializer = 'a';
虽然模仿很重要,但是也不能不加思考阿

[解决办法]
顶上.

读书人网 >C++

热点推荐