`
Riddick
  • 浏览: 631543 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
文章列表
在dll中输出了一个包含string类子对象的类,在DEBUG主工程中只要调用了string参数的成员函数,则main退出时都有那个错误;但是RRLEASE工程又是好的。 解决办法:主工程和DLL工程的都设置为同样的DEBUG Multithreaded DLL或Mutithreaded DLL,project-->settings-->c/c++标签页中的category下拉筐中选code generation,然后在Use Rutime Library中选DEBUG Multithreaded DLL或Mutithreaded DLL。
方法一:windows提供了一套函数,用于加载动态链接库中的符号(函数和变量),调用这些函数去加载:   1. HINSTANCE LoadLibrary( LPCTSTR lpLibFileName);     2. FARPROC GetProcAddress( HMODULE hModule, LPCWSTR lpProcName);     3. BOOL FreeLibrary( HMODULE hLibModule);     这最直观的一种方法,同时也是最麻烦的一种办法。   方法二:让调用者的工程依赖于动态链接库工程。       步骤如下:   ...
C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。 1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段 2、http://www.hotscripts.com/category/c-cpp/scripts-programs/ Hotscripts --提供数以百计的C和C++脚本和程序。所有程序都分为不同的类别。 3、http ...
假设某一天你打开自己的C++程序代码,然后对某个类的实现做了小小的改动。提醒你,改动的不是接口,而是类的实现,也就是说,只是细节部分。然后你准备重新生成程序,心想,编译和链接应该只会花几秒种。毕竟,只是改动了一个类嘛!于是你点击了一下"Rebuild",或输入make(或其它类似命令)。然而,等待你的是惊愕,接着是痛苦。因为你发现,整个世界都在被重新编译、重新链接!   当这一切发生时,你难道仅仅只是愤怒吗?   问题发生的原因在于,在将接口从实现分离这方面,C++做得不是很出色。尤其是,C++的类定义中不仅包含接口规范,还有不少实现细节。例如: class Per ...
掌握HTTP虽然不是必须的,但是如果你知道它的工作原理,那么在学习JSP开发中的某些知识就可以易如反掌了。   一,HTTP协议详解之URL篇   http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。 HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:http://host[":"port][abs_path]http 表示要通过HTTP协议来定位网络资源;host ...
遇到两个博客的发送都是使用cookie来标识用户的:my.opera.com以及myspace.   请求头 请求头类:QHttpRequestHeader   设置请求方式(get/post) QHttpRequestHeader::setRequest ("POST", "请求地址"); //post QHttpRequestHeader::setRequest ("GET", "请求地址"); //get 请求地址可以不包含Host名称   设置请求头: void QHttpR ...

QHttp

QHttp是Qt所提供有关网络的高阶API,可以协助我们进行HTTP协议的进行,QHttp发出请求时是非同步的,请求的过程中会发出相关的Signal,我们可以用Slot来接收这些Signal,并进行相关的处理。   以下先示范一个最基本的QHttp使用,程序将设计一个HttpGet类:   HttpGet.h #ifndef HTTPGET_H #define HTTPGET_H #include <QObject> class QUrl; class QHttp; class QFile; class HttpGet : public QObject ...
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -p mysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from ...
重载PreTranslateMessage函数屏蔽回车和ESC的消息: BOOL C***Dlg::PreTranslateMessage(MSG* pMsg) { if(WM_KEYDOWN == pMsg->message ) { UINT nKey = (int) pMsg->wParam; if( VK_RETURN == nKey || VK_ESCAPE == nKey ) return TRUE ; } return CDialog::PreTranslate ...
在windows环境下以批处理文件方式启动tomcat,只要运行<CATALINA_HOME>/bin/startup.bat这个文件,就可以启动Tomcat。在启动时,startup.bat会调用catalina.bat文件,而catalina.bat会调用setclasspath.bat文件来获取JAVA_HOME和JRE_HOME这两个环境变量的值,因此若要在tomcat启动时指向特定的JDK,则需在setclasspath.bat文件的开头处加入以下内容: rem ------------------------------------------------------- ...
只需要一个JSP页面就行了: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() ...
c语言中,什么都是通过传值来实现的,c++继承了这一传统并将它作为默认方式。除非明确指定,函数的形参总是通过“实参的拷贝”来初始化的,函数的调用者得到的也是函数返回值的拷贝。 正如我在本书的导言中所指出的,“通过值来传递一个对象”的具体含义是由这个对象的类的拷贝构造函数定义的。这使得传值成为一种非常昂贵的操作。例如,看下面这个(只是假想的)类的结构: class person { public: person(); // 为简化,省略参数 ~person(); ... private: string name, ad ...
    如果在申请动态内存时找不到足够大的内存块,malloc和new将返回NULL指针,宣告内存申请失败。通常有三种方式处理“内存耗尽”问题。 (1)判断指针是否为NULL,如果是则马上用return语句终止本函数。例如: void Func(void) { A *a = new A; if(a == NULL) { return; } … }  (2)判断指针是否为NULL,如果是则马上用exit(1)终止整个程序的运行。例如:   void Func(void) { A *a = new ...
  发生内存错误是件非常麻烦的事情。编译器不能自动发现这些错误,通常是在程序运行时才能捕捉到。而这些错误大多没有明显的症状,时隐时现,增加了改错的难度。有时用户怒气冲冲地把你找来,程序却没有发生任何问题 ...
       malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。   对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。          因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete。注意new/dele ...
Global site tag (gtag.js) - Google Analytics