も穆\铭 发表于 2013-9-15 11:40:15

一个单链表 模块化的问题

本帖最后由 も穆\铭 于 2013-9-15 11:40 编辑

// list.h

#ifndef LIST_H_
#define LIST_H_

struct Node;
typedef struct Node * List;

#endif
// list.cpp

#include "list.h"

struct Node
{
      int x;
      struct Node * Next;
};
// main.cpp

#include <stdio.h>
#include "list.h"



int main()
{
      List lst;                              // 可以创建
      struct Node node;            // 报错

      return 0;
}


因为不想把结构体放在头文件中,所以在不把结构体定义在头文件的前提下。
请问头文件中该怎么声明结构体,才能在main.cpp中使用struct Node。

如果有谁知道关于讲代码怎么分配在各个文件中的书那就更好了。谢谢~~

小丑Delta 发表于 2013-9-19 01:13:49

你都没在main函数中,把结构体的具体定义,给include进来!

逍滛怪亾 发表于 2013-10-12 20:02:27

我的一个貌似成功了,我的是xx.c和xxx.h两块,把结构体放到.h里,然后.c中含有#include "xxx.h"

逍滛怪亾 发表于 2013-10-12 20:03:00

大概就是这个样子吧

peng3726 发表于 2013-10-14 19:46:01

学习,继续升级中

欧阳柏 发表于 2013-10-25 16:04:59

学习学习学习学习学习学习学习学习学习学习学习学习

严肃,走神中 发表于 2013-11-17 14:05:43

印象中2个文件都编译是可以的啊,只要把相应的头文件包进去就好

网络学习 发表于 2013-11-18 00:37:27

我都等了很久了
页: [1]
查看完整版本: 一个单链表 模块化的问题