数据结构(Data structures)(三):结构结构嵌套

 

Nesting structures

结构可以嵌套(nested)使用,即一个结构的元素本身又可以是另一个结构类型。例如:

 

struct movies_t { string title; int year; }; 
struct friends_t { string name; string email; movies_t favorite_movie;  //结构类型为movies_t的元素favorite_movie又可以是friends_t结构类型 } charlie, maria; friends_t * pfriends = &charlie;


在有以上声明之后,我们可以使用下面的表达式:

   

  charlie.name;   maria.favorite_movie.title;   charlie.favorite_movie.year;   pfriends->favorite_movie.year;

都是有效的。且最后两个表达式是等价的。

这里所讨论的结构的概念与C语言中结构的概念是一样的。但在C++中,结构的概念已经被扩展到与类(class)相同的程度,只是它所有的元素成员(members)都是公开的(public)。



你可能感兴趣的:(struct)