两个极简单的问题

songjiebiancheng 2003-09-12 12:54:28
第一个是关于全局变量的问题.我想在两个对话框中传递一个变量,就在StdAfx.h中定义了CString user;在第一个对话框中用user.Format("%s",m_username)给user赋值,在第二个对话框中直接使用.第一次编译运行,有两个错误,但可以运行,第二次编译运行,没有错误.程序运行也没什么问题,可一关闭程序,就出现错误提示.我在StdAfx.h中重新定义static CString user,没出任何问题,可参数没办法传递了.哪个高手告诉我是什么原因啊?怎么做啊?
第二个问题,我用ODBC方式登录Oracle数据库.CMySet是我定义的CRecordSet的继承类,m_myset是CMySet的对象,我用while(!m_myset.IsEOF())循环想在表控件中显示表中的内容,可能编译通过.运行时出错,改成while(i<15)没什么问题,可这样只能显示固定的行了,是什么原因啊?我该怎么做呢?
...全文
25 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
flinming 2003-09-12
  • 打赏
  • 举报
回复
在app里定义才是全局变量
通过((C你的App*)(AfxGetApp()))->m_...
songjiebiancheng 2003-09-12
  • 打赏
  • 举报
回复
谢谢,第一个问题我按你说的解决了,可第二个问题我在循环前已经判断过了,m_myset对象里有记录,用while(i<15)可以显示出来,可当我把数字变成大于29的数时会出错。我以前连过别的数据库,没问题的,可现在不知道怎么回事。再帮帮我吧,谢谢了。
akun 2003-09-12
  • 打赏
  • 举报
回复
1. 全局变量可以放在stdafx.cpp中
用到的.cpp里面extern CString user;声明一下就可以用了。

2.open过后,现判断一下 IsBOF是否有记录,然后MoveFirst再while(!m_myset.IsEOF())循环

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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