两个问题

point_to 2003-04-22 11:22:34
第一个问题以前看见讨论过,不过当时没遇到就没留意,迷惑:
我的
template<typename Type>
class Matrix
{......}定义和声明必须放在一起!拆开就有错!(指的是分成.h文件和.cpp文件)是为什么?(win32 console application)
第二个问题在我得
template<typename Type>
class Matrix
{.....
void WritetoFile(ofstream &fout)//int i
{ ....}
.......
}
函数WritetoFile不能把输出文件流类对象ofstream &作为参数(换成string也不行,注:和头文件没有什么联系),但是换成int或者其他的基本类型,就好好的!
还有一点,把ofstream的对象放在函数体内也是可以得!为什么??
错误信息是:
error C2061: syntax error : identifier 'ofstream'
...全文
43 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
reinhard_liu 2003-04-29
  • 打赏
  • 举报
回复
第二个问题 你用的是不是 ms的产品 我发现ms的产品有这个问题,就是其实他的
iostream的继承关系其实和标准是不一样的,不是标准里的继承方式,所以我再看stanley lippman书的时候发现很多例子好像是不对的,后来查发现这个问题, ms的实现好像是有点问题的。不知道对不对,你可以检查一下这方面的问题。
widewave 2003-04-23
  • 打赏
  • 举报
回复
在第二个问题中:
typedef basic_ofstream<char, char_traits<char> > ofstream;
typedef basic_string<char, char_traits<char>, allocator<char> >
string;

我想可能是模板在具体化为类的时候,编译器出了麻烦。
hzp121191 2003-04-23
  • 打赏
  • 举报
回复
ofstream 是“流”,
而不是一般的类,当你把其作为一个参数传递时,就会引起编译时的编址的错误

以上所解仅供参考
point_to 2003-04-23
  • 打赏
  • 举报
回复
我现在怀疑是不是下面说得原因:

Template instatiation是个很头痛的事(尤其是查错时)。要在用到和定义template的程序做到close library,用LTI(link time instantiation)编译器你必须做些奇怪的事(比如link一下library但不产生任何可执行文件,没有可执行文件可产生)。

这段话里,close library是么意思??还有就是后面一句话的含义??
point_to 2003-04-23
  • 打赏
  • 举报
回复
把fstream定义在函数体里,一点错误都么,可以正常运行,今天还用了!我又看了几遍,应该不是笔误!麻烦大家再看看!
rushman 2003-04-23
  • 打赏
  • 举报
回复
第二个问题,可能是“笔误”,你看看上下文有没有错误(比如:括号)。
yyfzy 2003-04-23
  • 打赏
  • 举报
回复
up
Leemaasn 2003-04-22
  • 打赏
  • 举报
回复
晚了1步。。。。
:~(
eaglezhao 2003-04-22
  • 打赏
  • 举报
回复
第二个问题是没有引用对应的库文件。
#include <fstream>
#include <string>
pengzhenwanli 2003-04-22
  • 打赏
  • 举报
回复
第一个问题纯粹是编译器的问题,
现在的编译器不支持export关键字,所以必须写到一个头文件里。
第二个问题不知什么意思
point_to 2003-04-22
  • 打赏
  • 举报
回复
感谢!!!

第二个问题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
reinhard_liu 2003-04-22
  • 打赏
  • 举报
回复
第一个问题
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=507
luixui 2003-04-22
  • 打赏
  • 举报
回复
我也碰到过这个问题
widewave 2003-04-22
  • 打赏
  • 举报
回复
第二个问题:
加一句:
typedef Type instantiated_type;
然后用:
instantiated_type 代替 Type。
不知道行不行。
zhaoao 2003-04-22
  • 打赏
  • 举报
回复
gz
point_to 2003-04-22
  • 打赏
  • 举报
回复
没有晚!请注意我得表述:注:和头文件没有什么联系!!!!
1.算法是程序的灵魂,优秀的程序在对海量数据处理时,依然保持高速计算,就需要高效的数据结构和算法支撑。2.网上数据结构和算法的课程不少,但存在两个问题:1)授课方式单一,大多是照着代码念一遍,数据结构和算法本身就比较难理解,对基础好的学员来说,还好一点,对基础不好的学生来说,基本上就是听天书了2)说是讲数据结构和算法,但大多是挂羊头卖狗肉,算法讲的很少。 本课程针对上述问题,有针对性的进行了升级 3)授课方式采用图解+算法游戏的方式,让课程生动有趣好理解 4)系统全面的讲解了数据结构和算法, 除常用数据结构和算法外,还包括程序员常用10大算法:二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法、普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法、马踏棋盘算法。可以解决面试遇到的最短路径、最小生成树、最小连通图、动态规划等问题及衍生出的面试题,让你秒杀其他面试小伙伴3.如果你不想永远都是代码工人,就需要花时间来研究下数据结构和算法。教程内容:本教程是使用Java来讲解数据结构和算法,考虑到数据结构和算法较难,授课采用图解加算法游戏的方式。内容包括: 稀疏数组、单向队列、环形队列、单向链表、双向链表、环形链表、约瑟夫问题、栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式、递归与回溯、迷宫问题、八皇后问题、算法的时间复杂度、冒泡排序、选择排序、插入排序、快速排序、归并排序、希尔排序、基数排序(桶排序)、堆排序、排序速度分析、二分查找、插值查找、斐波那契查找、散列、哈希表、二叉树、二叉树与数组转换、二叉排序树(BST)、AVL树、线索二叉树、赫夫曼树、赫夫曼编码、多路查找树(B树B+树和B*树)、图、图的DFS算法和BFS、程序员常用10大算法、二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法、普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法马踏棋盘算法。学习目标:通过学习,学员能掌握主流数据结构和算法的实现机制,开阔编程思路,提高优化程序的能力。
本教程为授权出品课程介绍:1.算法是程序的灵魂,优秀的程序在对海量数据处理时,依然保持高速计算,就需要高效的数据结构和算法支撑。2.网上数据结构和算法的课程不少,但存在两个问题:1)授课方式单一,大多是照着代码念一遍,数据结构和算法本身就比较难理解,对基础好的学员来说,还好一点,对基础不好的学生来说,基本上就是听天书了2)说是讲数据结构和算法,但大多是挂羊头卖狗肉,算法讲的很少。 本课程针对上述问题,有针对性的进行了升级 3)授课方式采用图解+算法游戏的方式,让课程生动有趣好理解 4)系统全面的讲解了数据结构和算法, 除常用数据结构和算法外,还包括程序员常用10大算法:二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法、普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法、马踏棋盘算法。可以解决面试遇到的最短路径、最小生成树、最小连通图、动态规划等问题及衍生出的面试题,让你秒杀其他面试小伙伴3.如果你不想永远都是代码工人,就需要花时间来研究下数据结构和算法。教程内容:本教程是使用Java来讲解数据结构和算法,考虑到数据结构和算法较难,授课采用图解加算法游戏的方式。内容包括: 稀疏数组、单向队列、环形队列、单向链表、双向链表、环形链表、约瑟夫问题、栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式、递归与回溯、迷宫问题、八皇后问题、算法的时间复杂度、冒泡排序、选择排序、插入排序、快速排序、归并排序、希尔排序、基数排序(桶排序)、堆排序、排序速度分析、二分查找、插值查找、斐波那契查找、散列、哈希表、二叉树、二叉树与数组转换、二叉排序树(BST)、AVL树、线索二叉树、赫夫曼树、赫夫曼编码、多路查找树(B树B+树和B*树)、图、图的DFS算法和BFS、程序员常用10大算法、二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法、普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法马踏棋盘算法。学习目标:通过学习,学员能掌握主流数据结构和算法的实现机制,开阔编程思路,提高优化程序的能力。
1) 本套课程针对高校大学生系统学习C语言而录制,从0基础入门讲起,循序渐进,通俗易懂,同时适用于计算机系及非计算机系的同学。通过学习可以帮助大家掌握C语言本质,轻松面对C语言全国二级考试,并达到能独立完成中型C项目、C游戏的水平;2) 多数高校都开设了C语言课程,网上C语言课程也很多,但普遍存在两个问题: (1) 授课方式单一,大多是照着代码念一遍, 对刚刚接触编程的同学来说,感觉晦涩难懂 (2) 授课内容过度注重语法,没有项目实战支撑,造成课程枯燥无趣。本课程针对上述问题进行了改进 (1) 授课方式采用语法讲解+内存布局示意图+项目的方式,让课程生动有趣好理解 (2) 系统全面的讲解了C语言的核心技术点,还配套录制了《全国计算机二级C语言真题精讲》,让学员在掌握C语言编程的同时,还能轻松面对二级考试;3) 课程详细内容: 常量-变量、分支语句、循环语句、操作符和表达式、函数(库函数、自定义函数、递归调用 )、数组(一维数 组、二维数组、数组作为函数参数、指针数组)、指针(指针和指针类型、二级指针和多级指针、指针表达式解析、指针运算、数 组指针、函数指针、回调函数)、调试技巧、程序环境和预处理(翻译环境、运行环境、预定义符号、#define和#undef、宏和函 数、条件编译、文件包含)、 数据在内存中的存储、内存块分配、static、字符函数和字符串函数、自定义类型(结构体、枚举 、联合)、动态内存管理、文件操作(i/o常量、i/o函数、流)。

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧