<C缺陷和陷阱>读书笔记

1、=不同于==

在进行条件判断时:

(1)如果出现if(a == 5)最好写成if(5 == a),因为根据常数不可赋值的性质,如果此时将==写成=,编译器会报错,但是如果按照a==5形式来写,如果将==写成=,编译器不会报错,这样就会永远成立,而且出现错误不易检查;

(2)如果出现if(a==0)或者if(a!=0)时,最好写成if(!a)或者if(a),这样不用出现错误。

(3)如果出现if(ptr==NULL)或者if(ptr!= NULL)时,可以按照(1)中形式来写,若是按照(2)中来写,最好注明是指针变量


2、&不同于&&,|不同于||

&:按位运算符

&&:逻辑运算符

|:按位运算符

||:逻辑运算符


3、当出现y=x/*p时,最好写成y=x/(*p) 或者y = x  /  *p;

因为当/和*连在一起写的时候,被编译器认为是注释的开端和结尾。


4、



*****************************************************************************************************************************************************************************************


2013年5月6日更新


*****************************************************************************************************************************************************************************************

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Kotlin 的协程来实现这个转换过程。您可以使用 `flow.collect()` 将数据从 `Flow<List<NoteContentEntity>>` 收集到可变的状态中,并使用 `mutableStateOf()` 函数来创建可变状态变量。下面是一个示例代码: ```kotlin import androidx.compose.runtime.mutableStateOf import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch fun convertFlowToList(flow: Flow<List<NoteContentEntity>>): MutableState<List<NoteContentEntity>> { val listState = mutableStateOf<List<NoteContentEntity>>(emptyList()) launch { flow.collect { listState.value = it } } return listState } ``` 在上面的代码中,我们首先创建了一个可变状态变量 `listState` 并将其初始化为空列表。然后我们启动了一个协程来收集数据库查询返回的流,并将其更新到 `listState` 变量中。最后我们返回 `listState` 变量。 您可以在 Android 中使用这个函数来将查询返回的流转换为可变状态变量,并在 Compose 组件中使用它来显示数据。下面是一个使用示例: ```kotlin val noteListState = convertFlowToList(noteDao.getAllNoteContent()) LazyColumn { items(noteListState.value) { noteContent -> NoteListItem(noteContent) } } ``` 在上面的代码中,我们首先调用 `convertFlowToList()` 函数将查询返回的流转换为可变状态变量 `noteListState`。然后我们使用 `LazyColumn` 组件显示查询返回的结果,并使用 `NoteListItem` 组件来显示每个笔记内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值