c++基础-C++关于结构体初始化的问题

问题描述

C++关于结构体初始化的问题
#include
#include
using namespace std;
struct Person
{
string name;
int count;
};

int main()
{
Person leader[3]={{""li""0}{""zhang""0}{""fun""0}};

error C2440: 'initializing' : cannot convert from 'char [3]' to 'struct Person'

解决方案

这个需要c++11才能支持,你的编译器是什么?

解决方案二:

单纯的结构体初始化是没问题的。这段代码不完整吧,问题出在其他部分!

解决方案三:
struct Person leader[3]={{""li""0}{""zhang""0}{""fun""0}};

解决方案四:
for(i = 0; i<3;i++)
{leader[i].name =""xxxx"";leader[i].count = 10;}

解决方案五:
C++11的新语法,Brance Initialize
http://www.informit.com/articles/article.aspx?p=1852519

时间: 2024-10-26 05:44:15

c++基础-C++关于结构体初始化的问题的相关文章

Linux下C结构体初始化[总结]

1.前言 今天在公司看一同事写的代码,代码中用到了struct,初始化一个struct用的是乱序格式,如下代码所示: typedef struct _data_t { int a; int b; }data_t; data_t data = { .a = 10, .b = 20, };   通常初始化一个结构体的方式是按序初始化,形如:data_t data={10,20}.感觉很好奇,如是上网百度一下,发现linux下struct初始化可以采用顺序和乱序两种方式,而乱序又有两种不同的形式.本文

struct-结构体初始化问题, 定义了结构体和结构体数组,结构体中想存的数据写在了txt文件中,我该怎么做初始化

问题描述 结构体初始化问题, 定义了结构体和结构体数组,结构体中想存的数据写在了txt文件中,我该怎么做初始化 定义了结构体和结构体数组,结构体中想存的数据写在了txt文件中,我该怎么做初始化//定义结构体//struct achievement{int number; char name[20]; char sex; float achievement1achievement2achievement3;}tab_achievement[N]; 解决方案 写一个循环,从txt中读取数据,然后赋值

struct-结构体初始化问题,想要存入结构体中的数据写在了txt文件中,这样写可以实现初始化吗

问题描述 结构体初始化问题,想要存入结构体中的数据写在了txt文件中,这样写可以实现初始化吗 //定义结构体//struct achievement{int number; char name[20]; char sex; float achievement1achievement2achievement3;}tab_achievement[N]; //读出文件函数//void read() {FILE *fp;int in;if((fp=fopen(""C:UsersAdminist

C语言中结构体(struct)的几种初始化方法_C 语言

本文给大家总结的struct数据有3种初始化方法      1.顺序      2.C风格的乱序      3.C++风格的乱序 下面通过示例代码详细介绍这三种初始化方法. 1)顺序 这种方法很常见,在一般的介绍C的书中都有介绍.顺序初始化的特点是: 按照成员定义的顺序,从前到后逐个初始化:允许只初始化部分成员:在被初始化的成员之前,不能有未初始化的成员. 示例: struct User oneUser = {10, "Lucy", "/home/Lucy"}; 2

对嵌入式开发C语言结构体的一点总结

今天冬至居然不上班,公司的良心啊!这回有心情写博客和日志了,好了,废话不多说.直接看下文: 鉴于嵌入式开发过程中,C语言结构体的使用当然是必不可少.话说,基础什么的比你会更牛逼的算法更重要,基础不牢,地动山摇!!最本质的东西就是基础,不要学到越高级的东西却忘了最本质的东西,这样就失去了学习的意义. 接下来我将对结构体最基础的东西,如何初始化,如果打印信息做一个最基础的总结,当然结构体在内核中到处可见,随便一个可能都是你不认识的东西,归根到底,还是基础: 好了,直接上代码,我们对这个程序进行分析.

【Go语言】【13】再谈GO语言的结构体

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://qingkechina.blog.51cto.com/5552198/1671842 本文从如下四个方面再领着大家认识结构体 匿名结构体和匿名成员的结构体 值传递和引用传递 再谈嵌套结构体 面向对象 1.匿名结构体和匿名成员的结构体 如上篇所述,一个结构体需要先声明,再初始化,最后把初始化后的结构体赋值给其它变量,例如: /*声明结构体*/ type employee struc

【Go语言】【12】GO语言的结构体

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://qingkechina.blog.51cto.com/5552198/1671463        当我第一次接触到C语言时,就对结构体投入了极大的兴趣,认为这个东西以后大有作为,后来接触Java.C++,面向对象编程中的对象进入我的视线,经过了这么多年的磨练,回过头来再看结构体依旧是那么亲切:同时从另一个角度上看结构体与面向对象中的成员对象是多么的相像 :) 一.结构体元素 结

struct-C语言中结构体中的数组,不能直接赋值吗

问题描述 C语言中结构体中的数组,不能直接赋值吗 设有定义:struct{char mark[12];intnum1;double num2;}t1,t2;若变量均已正确赋初值,则以下语句中错误的是(C) (A) t1=t2; (B) t2.num1=t1.num1; (C) t2.mark=t1.mark;//mark为结构体中的数组,不能直接赋值?? (D) t2.num2=t1.num2; ?====如题参考答案说为结构体中的数组,不能直接赋值,为什么呢?那应该怎么赋值呢?求大侠指教 解决

浅析结构体函数指针与内核设备驱动

最近在公司没什么事做,突然有来写写日志和博客,这种突发的灵感来自于我在学习内核驱动代码的时候发现了结构体的一种古老的初始化方法,多亏了尚观广州校区的叶老师在群里用心的给我文字讲解,让我明白了原来结构体初始化也可以用:冒号这样的方法.          其实在C语言中,冒号:的用法有很多,比如三目运算符   表达式?表达式1:表达式2 : 它的意思就是如果表达式成立,那么执行表达式1,否则执行表达式2 .还有一种就是广泛用于结构体的位段中,例如: Struct node { Int id : 2