随笔分类 - C++
C++的一些鸡毛蒜皮
摘要:该宏放置一个注释到对象文件或者可执行文件。#pragma comment( comment-type [,"commentstring"] )comment-type是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。commentstring是一个提供为comment-type提供附加信息的字符串,Remarks:1、compiler:放置编译器的版本或者名字到一个对象文件,该选项是被linker忽略的。2、exestr:在以后的版本将被取消。3、lib:放置一个库搜索记录到对象文件中,这个类型应该是和commentstr
阅读全文
摘要:网上有的方法我都试了,结果都不成功,下边这个方法解决了问题,在此感谢http://my.csdn.net/rryr2VS2010和VS2012或者sv2008和VS2010,高版本VS编译都会出现使用VS2008的D:\Program Files\Microsoft Visual Studio 9.0\VC\bin目录下的cvtres.exe替换到VS2010版本VS目录下再编译成功。
阅读全文
摘要:1. 必须总是使用完全限定的标准库名字:在头文件中。 头文件的内容会被预处理器复制到程序中。用#include包含文件时,相当于头文件中的文本将成为我们编写的文件的一部分。如果在头文件中放置using声明,就相当于在包含该头文件using的每个程序中放置了同一using,不论改程序是否需要using声明。 通常,头文件中应该只定义确实必要的东西。
阅读全文
摘要:C++中异常处理的语法。 关键字:1、 try 2、 catch 3、 throw 其中关键字try表示定义一个受到监控、受到保护的程序代码块;关键字catch与try遥相呼应,定义当try block(受监控的程序块)出现异常时,错误处理的程序模块处理异常,并且每个catch block都带一个参数(类似于函数定义时的数那样),这个参数的数据类型用于异常对象的数据类型进行匹配;而throw则是检测到一个异常错误发生后向外抛出一个异常事件,通知对应的catch程序块执行对应的错误处理。1、还是给一个例子吧!如下: 1 int main() 2 { 3 cout << "I
阅读全文
摘要:可以用strtok1 char * strtok ( char * str, const char * delimiters ); // 函数原型 1 /* strtok example */ 2 #include <stdio.h> 3 #include <string.h> 4 5 int main () 6 { 7 char str[] ="- This, a sample string."; 8 char * pch; 9 printf ("Splitting string \"%s\" into tokens:
阅读全文
摘要:包含头文件fstream,文件已经存在。 1 #include <iostream> 2 #include <fstream> 3 #include <string> 4 using namespace std; 5 6 int main() { 7 string str; 8 // size_t filesize; 9 10 ifstream file("test.txt", ios::in | ios::ate);11 // filesize = file.tellg();12 13 // str.reserve(filesize);
阅读全文
摘要:知识补充: sqlite3.dll动态链接库,它允许程序共享执行特殊任务所必需的代码和其他资源。 动态的sqlite3.lib相当于一个h文件,是对实现部分(.dll文件)的导出部分的声明。编译后只是将导出声明部分编译到宿主程序中,其生成的sqlite3.exe在运行时需要相应的dll文件支持 。 静态的sqlite3.lib将导出声明和实现都放在lib中。编译后所有代码都嵌入到宿主程序,其生成的sqlite3.exe可直接运行。任务: 一.使用VS2010编译sqlite3,生成动态的sqlite3.lib和sqlite3.dll(sqlite...
阅读全文
摘要:fstream流的eof()判断有点不合常理 按常理逻辑来说,如果到了文件末尾的话,eof()应该返回真,但是,C++输入输出流如何知道是否到末尾了呢? 原来根据的是:如果fin>>不能再读入数据了,才发现到了文件结尾,这时才给流设定文件结尾的标志,此后调用eof()时,才返回真。 假设 find>>x; //此时文件刚好读完最后一个数据(将其保存在x中) 但是,这时fin.eof()仍为假,因为 fin流的标志eofbit是False,fin流此时认为文件还没有到末尾,只有当流再次读写时 fin>>x,发现已无可读写数据,此时流才知道到达了结尾,这时才将标
阅读全文
摘要:我的思维里,矩阵的左上角是开始的位置。现在我遇到一个问题,矩阵的显示和我实际看到的情况不符。 笛卡尔坐标系中,原点在左下角,我要把某些元素从左下角开始显示出来,也就是说左下角才是开始位置。这就和矩阵的不同了。有时候总是混淆,把位置搞错。现在写了rotateArray函数来旋转这个矩阵,使我们输入矩阵时不用再考虑它的输出会是什么样的。因为处理的结果就是:我们输入的矩阵和我们看到的显示在外观上是一样的。 下面是rotateArray函数和测试代码:rotateArray.cpp 1 #include <iostream> 2 #include <cstdlib> 3 //旋
阅读全文

浙公网安备 33010602011771号