MFC中在哪里添加自定义的结构体

MFC中在哪里添加自定义的结构体,第1张

MFC程序也是一样的。

如果只在一个cpp里面用漏仔搭,那么在这个cpp所有使用之前就可以。

通常,习惯返拿戚巧于放到.h头文件中。

全局多个地方都使用的结构体,可以放到app类头文件,或者stdafx.h中。

1. map最基本的构造函数;

map<string ,int>mapstringmap<int,string >mapint

map<sring,char>mapstringmap<char ,string>mapchar

map<char,int>mapcharmap<int ,char>mapint;

2. map添加数据;

map<int ,string>maplive

1. maplive.insert(pair<int,string>(102,"aclive"))

2. maplive.insert(map<int,string>::value_type(321,"hai"))

3. maplive[112]="April"//map中最简单最常用的插入添加!

3. map中元素的查找:

find()函数返回一个迭代器指向键值为key的元素,如果没找到就返回指向map尾部的迭代器。

map<int ,string >::iteratorl_it

l_it=maplive.find(112)//返回的是一个指针

if(l_it==maplive.end())

cout<胡蔽<"we do not find112"<<endl

elsecout<<"wo find112"<<endl

map<string,string>m

if(m[112]=="")

cout<<"we do not find112"<<endl

4. map中元素的删除:

如果删除112;

map<int ,string>::iterator l_it

l_it =maplive.find(112)

if( l_it == maplive.end())

cout<<"we do not find112"<<endl

else maplive.erase(l_it)//delete 112

5. map中 swap的用法:

Map中的swap不是一个容器中的元素交换,而是两个容器交换;

For example:

#include<map>

#include<iostream>

usingnamespace std

int main()

{

map <int, int>m1, m2, m3

map <int,int>::iterator m1_Iter

m1.insert( pair <int, int>(1, 10 ) )

m1.insert ( pair <int,int>( 2, 20 ) )

m1.insert ( pair <int,int>( 3, 30 ) )

m2.insert ( pair <int,int>( 10, 100 ) )

m2.insert ( pair <消做物int,int>( 20, 200 ) )

m3.insert ( pair <int,int>( 30, 300 ) )

cout <<"The original map m1is:"

for ( m1_Iter = m1.begin( ) m1_Iter != m1.end() m1_Iter++ )

cout <<" "<<m1_Iter->second

cout <<"."<<endl

// This isthe member function version of swap

// m2 is said to be theargument mapm1 the target map

m1.swap( m2)

cout <<"Afterswapping with m2, map m1 is:"

for ( m1_Iter = m1.begin( ) m1_Iter != m1.end() m1_Iter++ )

cout <<" "<<m1_Iter ->second

cout <<"."<<endl

cout <<"After swapping with m2, mapm2 is:"

for ( m1_Iter = m2.begin( )m1_Iter != m2.end()m1_Iter++ )

cout <<" "<<m1_Iter ->second

cout <<"."<<endl

/拿液/ This is the specialized template version of swap

swap( m1, m3 )

cout <<"Afterswapping with m3, map m1 is:"

for ( m1_Iter = m1.begin( )m1_Iter != m1.end()m1_Iter++ )

cout <<" "<<m1_Iter ->second

cout <<"."<<endl

}

首先,定义一个结构的一般形式为:

struct结构名

{

//成员表列

 帆晌 }

成员表态枝锋由若干个成员组成, 每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明,其形式为:“类型说明符 成员名”。成员名的命名应符合标识符的书写规定。例如:

struct stu

{

int num

char name[20]

char sex

float score

}

在这个结构定义中,结构名为stu,该结构由4个成员组成。 第一个成员为num,整型变量;第二个成员为name,字符型数组;第三个成员为sex,字符型变量;第四个成员为score,浮点型变量。 应注意在括号后的分号是必不可少的。

然后,当结构定搭野义完成后,即创建了一种数据类型,可以像int、float等内置类型一样使用,以上面定义的stu结构体来和int类型对比着看。

int a//定义一个int类型的变量a

stu a //定义一个stu类型的变量a

int *p //定义一个int类型的指针p

stu *p //定义一个stu类型的指针p

int a[10]//定义一个int类型的数组a,它有10个元素,每个元素是int类型

stu a[10]//定义一个stu类型的数组a,它有10个元素,每个元素是stu类型。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11994192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存