default argument given of parameter 的问题

我写了一个类,其中的一个方法的一个参数是有默认值的:

private:
    void send_message(char *msg, qint16 iid=0);

实现的时候:

void tcp_socket_class::send_message(char *msg, qint16 iid=0)
{
    ... ...
}

编译时报错:

error: default argument given for parameter 2 of 'void tcp_socket_class::send_message(char*, qint16)' [-fpermissive]

error: after previous specification in 'void tcp_socket_class::send_message(char*, qint16)' [-fpermissive]

在网上查了一下,带有默认值参数的函数,在实现的时候,参数上是不能有值的。改成这样就对了:

void tcp_socket_class::send_message(char *msg, qint16 iid)
{
    ... ...
}

posted @ 2013-06-02 21:11  simmerlee  阅读(407)  评论(0)    收藏  举报