任何人都可以解释这个C++代码的内容.它在Linux上编译并执行正常.
#include <iostream>
using namespace std;
int main = ( cout << "Hello world!\n", 195 );
Run Code Online (Sandbox Code Playgroud) 我正在尝试将Room用于我的新应用程序.但每当我重新启动我的应用程序时,我都无法检索旧数据.看起来我的应用程序每次都在创建一个新的数据库实例,但我不确定为什么.这是我的基于MVP模式的类.
编辑:我刚刚再次检查,我可以看到实体的自动生成的Id(MyModel)没有重置为1,但是当我检索数据时,我只在该会话中插入了集合.
道
@Dao
public interface MyDao {
@Insert(onConflict = OnConflictStrategy.REPLACE)
List<Long> insertModels(List<MyModel> models);
@Query("SELECT * FROM MyModel")
List<MyModel> getModels();
}
Run Code Online (Sandbox Code Playgroud)
数据库
@Database(entities = {MyModel.class}, version = 1)
public abstract class MyDatabase extends RoomDatabase {
public abstract MyDao myDao();
}
Run Code Online (Sandbox Code Playgroud)
DatabaseModule
@Module
public class DatabaseModule {
@Provides
@Singleton
MyDatabase provideMyDatabase(Application context) {
return Room.databaseBuilder(context.getApplicationContext(), MyDatabase.class, "MyDB").build();
}
@Provides
@Singleton
MyDao provideMyDao(MyDatabase myDatabase) {
return myDatabase.myDao();
}
}
Run Code Online (Sandbox Code Playgroud)
数据源
@Singleton
public class MyDataSource {
MyDao mMyDao;
@Inject
public MyDataSource(@NonNull MyDao myDao) …Run Code Online (Sandbox Code Playgroud) 下面的代码在C中.当给出一组输入数字时,它会跳过第一个数字,然后打印其余数字.
main(i)
{
if(~scanf("%d",gets(&i)))
printf("%d\n",i),main();
}
Run Code Online (Sandbox Code Playgroud)
我想知道,这段代码是如何工作的?
编辑:对于那些认为它不起作用的人 http://www.ideone.com/cENzy