php中的“->”用法
php中的“->”用法
一般来说,看到有->的用法都是这样的形式对象->属性或方法,如:$a=new b();$a->c;php中的“->”用法有哪些呢?本文是学习啦小编整理php中的“->”用法的资料,仅供参考。
php中的“->”用法
看看php手册对mysql_fetch_object的介绍:mysql_fetch_object() 和 mysql_fetch_array() 类似,只有一点区别 - 返回一个对象而不是数组。间接地也意味着只能通过字段名来访问数组,而不是偏移量(数字不是合法的属性名)。
echo $row->field;
/* this is invalid */
echo $row->0;?> 手册里有这个例子:
mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");
$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result)) {
echo $row->user_id;
echo $row->fullname;
}
mysql_free_result($result);
?>
->简介
->运算符叫做“指向结构体成员运算符”,是C语言和C++语言的一个运算符。
一个指针当用来指向一个结构体、对象时,称之为结构体指针或对象指针。结构体指针或对象指针中的值是所指向的结构体或对象的首地址。通过结构体指针或对象指针即可访问该结构体或对象。
这需要用到结构体关键字struct和C++类关键字class。
结构体指针和对象指针定义的形式:
struct 结构体类型名 *指针名;//结构体指针
struct 结构体类型名 *指针名 = &一个结构体的名字;//结构体指针并赋初值
struct 结构体类型名 *指针名 = new struct 结构体类型名;//结构体指针并用new申请内存
struct 结构体类型名 *指针名 =(struct 结构体类型名 *)malloc(sizeof(struct 结构体类型名))//结构体指针并用malloc申请内存 使用应包含头文件stdlib.h
//对象指针的定义方法略同。
优先级:1
这个运算符在链表中很有用。
->用法实例
#include
#include
using namespace std;
class C
{
public:
int num;
string name;
};
int main(void)
{
C obj;
C *p = &obj;
p->num = 5;
p->name = "Tony";
cout << p->num << p->name << endl;
return 0;
}
程序输出:
5Tony
2.
#include
#include
using namespace std;
class C
{
public:
int num;
string name;
};
void changevalue(C *t,int num,string name)
{
t->num=num;
t->name=name;
}
int main(void)
{
C obj;
changevalue(&obj,5,"Tony");
cout << obj.num << obj.name << endl;
return 0;
}
程序输出:5Tony
不过在定义全局函数的时候最好传入引用而不是指针,这样在调用对象时和定义函数不会出错。
看了php中的“->”用法的人还看了: