
问题应该是你把栈对象的定义放在头文件中了,比如这样:
Stack s;
头文件中应该只有类的定义,而没有对象的定义;对象应该在cpp文件中定义。
首先建立一个工程,估计你也建好了
然后点击文件-》新建-》选择第一个files-》然后点击c++Header File,输入头文件名就可以了。。。
在里面定义函数的话直接定义就可以了啊,就像在工程里定义函数一样啊!!!
书上都有的,要不你看一下书上写的。。。
#define _CRT_SECURE_NO_WARNINGS
#include <stdioh>
//声明一个求和的函数
int sum(int a, int b);
int main(int argc, char argv[])
{
int x = 5, y = 7;
int s = sum(x, y); //调用函数
printf("x + y = %d \n", s);
system("pause");
return 0;
}
//定义求和函数
int sum(int a, int b)
{
return a + b;
}
更多C语言教程
函数的实现一般不写在h文件中(inline函数除外),头文件中应该只包含函数的声明、类型定义和预处理器指令。应该将函数的声明写在头文件中,将函数的实现写在c文件中,以后要用这些函数,就把c文件加入这个项目,并包含对应的头文件。
也可以将自己写的函数编译为库文件(如DLL文件),请自行查阅相关的资料。
你这个分开写,是指把函数声明放到h头文件里,把具体实现放到对应的c++文件里吧。这种做法,对于大一点的程序开发,是很有用的,且VC6也会帮你这样去做。 如果是在h的函数声明里,要声明一个指针类型的形参是可以的,但应用如,int str 去定义一下形参。 在c文件的调用时,应用&str ,去取得str的地址。 如没有解释清楚,请发你的代码。
工程文件 -- Projec File 为了某个目标集合的代码用以生成exe、dll或是lib等
头文件(h) -- Header File 这是为了声明(Declairation)变量、类、函数等使用的
源文件 (c, cpp)-- Source File 这是为了实现(Definition)类成员函数、函数等的具体代码用的
调用同一个工程中的函数 ==》准确一点的说法是调用某个实现的函数
#include “函数所在的头文件名称” -- 可以是相对路径或是绝对路径,也可以是工程文件里设定的“标准路径”
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)