摘要: 在C++98中sizeof运算符只能作用于类的静态成员,或者对象的非静态成员,所以对于类的非静态成员,必须先构造一个对象,这是相当麻烦的。 1 #include 2 using namespace std; 3 4 struct People { 5 int hand; 6 static People *all; 7 }; 8 9 int main() {10 People p;11 cout hand);但是在C++ 11中就可以直接使用如下方式:1 sizeof(People::hand) 阅读全文
posted @ 2013-10-25 10:05 lniwn 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 在C++ 11中,声明一个类为另外一个类的友元时,不再需要使用class关键字,也可以使用typedef(或者using)定义的别名。 1 class Poly; 2 typedef Poly P; 3 4 class LiLei { 5 friend class Poly; // C++98通过, C++11通过 6 }; 7 8 class Jim { 9 friend Poly; // C++98不通过, C++11通过10 };11 12 class HanMeiMei {13 friend P; // C++98不通过, C++11通过1... 阅读全文
posted @ 2013-10-25 09:51 lniwn 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 在Go中net/rpc标准包提供了编写RPC服务需要的系列函数。net/rpc包允许RPC客户端通过网络或者IO连接调用一个远端对象的public方法。在RPC服务端,可将一个对象注册为可访问的服务,之后该对象的公开方法就能够被远程调用。一个RPC服务端可以注册多个不同类型的对象,但是不允许注册同一类型的多个对象。一个对象中的方法只有满足如下条件,才能被RPC服务端设置为可远程调用:必须是在对象外部可访问的(首字母大写)必须有两个参数,且参数类型都必须是包外部可以访问的类型或者Go内置类型第二个参数必须是一个指针方法必须返回一个error类型的值用代码表示如下:func (t* T) Meth 阅读全文
posted @ 2013-10-19 14:31 lniwn 阅读(1186) 评论(0) 推荐(0) 编辑
摘要: 一般使用QLabel显示验证码比较方便,然后在图片上单击刷新验证码,这是最基本的功能,但是QLabel默认是没有鼠标单击的信号,网络上好多文章都是继承QLabel,然后重载event方法,可是我就为了一个单击事件,没必要这么大费周章。这是可以用到eventFilter,函数原型:bool eventFilter(QObject * watched, QEvent * event);需要在父类中为QLabel安插过滤器,这个函数才会被调用m_pLabelImage->installEventFilter(this);这样QLabel的所有消息都会经过eventFilter函数,如下是一种实 阅读全文
posted @ 2013-10-16 23:45 lniwn 阅读(4028) 评论(0) 推荐(0) 编辑
摘要: 函数原型QMetaObject::Connection QObject::connect(const QObject* sender, const char* signal, const QObject* reciver, const char* method, Qt::ConnectionType type=Qt::AutoConnection)创建一个从发送方指定信号到接收方方法的链接,返回链接的句柄,可以用于断开链接。可以通过转换为bool值来判断Connecton是否有效。发送方的信号和接收方的方法(槽)都是以字符指针的形式传递进来的,可以通过两个宏SIGNAL(), SLOT()将指 阅读全文
posted @ 2013-10-12 16:40 lniwn 阅读(2343) 评论(0) 推荐(0) 编辑