摘要:
在默认的VC6环境、当迩使用PlaySound函数会报错PlaySound (TEXT ("hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ;如果报是未定义的错误、那里因为迩未包含相关头文件、加上下面就可以了#include <mmsystem.h> // 定义PlaySound的头文件如果是报下列的链接错误error LNK2001: unresolved external symbol __imp__PlaySoundA@12那么在VC6下设置一下工程->设置->连接->工程选项在这个工程选项 阅读全文
摘要:
经常遇到这种情况string str;while(cin >> str){}也就是一直等待输入、直到遇到一个非string类型的、但何为非string类型、字母?数字?还是标点符号、NONO、都不行、在windows下、输入ctrl+ z、然后再按回车就行了、因为ctrl+z输入了^z、等于EOF(0)、自然就可以结束输入了、另外在linux底下EOF为ctrl+d如果是int ival;呢、那自然就简单狠多了、输入数字都可以、凡是数字以外的字母或符号都会立即退出循环 阅读全文
摘要:
最简单当然是用typeid了、不过首先得加入头文件typeinfo例如想知道某个数据的类型、则使用name方法#include <typeinfo>using namespace std;int main(){ int iobj; cout << typeid( iobj ).name() << endl; // 打印: int cout << typeid( 8.16 ).name() << endl; // 打印: double return 0;}如果只是想比较两者的类型是否相同、大可不必name方法#include <t 阅读全文
摘要:
explicit显示定义、禁止编译器隐式发生用户转换、如下class SmallInt {public: SmallInt(int i){}};class Number {public: Number(const SmallInt&);};如果不使用explicit的话、那么即使使用一个int的变量来初始化Number的构造函数也可以成立、编译器会首先调用SmallInt的构造函数、先使用int的变量初始化SmallInt、再把SmallInt的对象引用给Number的构造函数int ok = 0;Number(ok);但如果加上关键字explicit的话、这样编译是错误的!只能够.. 阅读全文
摘要:
优先顺序由上往下递减 操作符功能用法::全局域::name::类域classtype::name::名字空间域namespace::name.成员选择object.member->成员选择pointer->member[]下标variable[expr]()函数调用name(expr_list)() 类型构造type(expr_list)++后置递增lvalue++--后置递减lvalue--typeid类型IDtypeid(type)typeid运行时刻类型IDtypeid(expr)const_cast类型转换const_cast<type>(expr)dynami 阅读全文
摘要:
typedef声明不属于类的成员class Account { typedef double Money; // ... private: static Money _interestRate; static Money initInterest(); }; // Money 必须用 Account:: 限定修饰 Account::Money Account::_interestRate = initInterest(); 在类体外的类成员定义中、只有被定义的成员名字之后的程序文本、才属于该类域、而不能加任何类成员限定符、比如这个例子、由于Account::_interestRa... 阅读全文
摘要:
首先在使用位向量操作符时强烈建议使用无符号类型、因为有符号类型在不同的机器上有不同的实现、所以有可能造成代码无法通用!按位取反、按位或和按位与就不讲了、都比较简单易懂、讲按位异或吧^、比如有两个操作数、 12 ^ 17所有按位操作都要先转换成二进制12为110017为10001按位异或的规则为同为1或者同为0则为0、否则都为1下面比较两者、12的二进制为4位、要与17比较则12的二进制向左补001100 ->1210001 ->1711101 ->结果为29再讲讲移位操作符吧、其实也狠简单、理解了就OK比如这个例子 3 << 7老例子、先转化成二进制、不过这里不需 阅读全文
摘要:
其实最新版本应该是drupal7、不过drupal6高手多、也比较稳定、教材也比较容易找、所以为了避免节外生枝就选择drupal6吧、至于下载就不说了、去drupal.org官网找到drupal6的版本下载至ubuntu下、然后解压放个链接去/var/www就完事了、前提是已经搭建好了lamp或者lnmp环境、之后就打开浏览器输入服务器地址、开始drupal的安装、首先的话、应该整个drupal目录的权限改成www-data用户和组、不然会引起权限的问题chown -R www-data:www-data drupal6这里假设迩的drupal文件目录是drupal6、然后进入drupal目录 阅读全文
摘要:
所谓的clear urls就是把类似www.drupal.com/?q=admin转化成www.drupal.com/admin、这样好处有两个、一个是更容易被搜索引擎搜集到、另一个当然是容易记住啦、哈哈如果迩是使用apache作为http服务器、那么可以直接在drupal上开启clear urls、Administration->Configureation->Search and metadata->Clean URLs、然后直接开启就可以了如果迩是nginx服务器、那么就需要在配置文件写些内容以模拟apache的转发功能、在server段里加入以下内容server { 阅读全文
摘要:
此文基于ubtuntu10.04 server 和 drupal7闲话就少说了、假设迩已经搭建好了lnmp环境或者lamp环境、还没搭建好就上网自行搜索ubtun搭建lamp等教程吧、假设已经把www目录设置在/var/www、所以只需要把drupal的源码包下载至这个目录然后解压就可以使用了、注意、由于某些访问权限的问题、最好把drupal的所有文件都改写成www-data用户下和www-data用户组、这个意思就是说这个目录属于网络用户、可以随时更改、其实就是属于http服务器的权限啦、因为用户的所有操作都是经由http服务器来执行的、可能是apache、也有可能是nginx、这些服务器的 阅读全文