我正在学习C++而我正在进入虚拟功能.
根据我的阅读(在书中和在线),虚函数是基类中的函数,您可以在派生类中重写它们.
但是在本书前面,当我学习基本继承时,我能够在不使用的情况下覆盖派生类中的基本函数virtual
.
那我在这里错过了什么?我知道虚拟功能还有更多功能,而且它似乎很重要,所以我想清楚它究竟是什么.我在网上找不到直接答案.
我有一个名为test.sh的脚本:
#!/bin/bash
STR = "Hello World"
echo $STR
Run Code Online (Sandbox Code Playgroud)
我跑的时候sh test.sh
得到这个:
test.sh: line 2: STR: command not found
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我在网上看一下非常基础/初学者的bash脚本教程,这就是他们说声明变量的方式......所以我不确定我做错了什么.
我在Ubuntu Server 9.10上.是的,bash位于/bin/bash
.
不同的LogCat
方法是:
Log.v(); // Verbose
Log.d(); // Debug
Log.i(); // Info
Log.w(); // Warning
Log.e(); // Error
Run Code Online (Sandbox Code Playgroud)
使用每种类型的日志记录的适当情况是什么?我知道也许它只是一点点语义,也许它并不重要,但是对于LogCat
Android Studio和Eclipse中的过滤,我很高兴知道我在适当的时候使用了正确的方法.
vector<int> myVector;
Run Code Online (Sandbox Code Playgroud)
并且让我们说向量中的值是这个(按此顺序):
5 9 2 8 0 7
Run Code Online (Sandbox Code Playgroud)
如果我想删除包含值"8"的元素,我想我会这样做:
myVector.erase(myVector.begin()+4);
Run Code Online (Sandbox Code Playgroud)
因为那会抹掉第4个元素.但有没有办法根据值"8"擦除元素?喜欢:
myVector.eraseElementWhoseValueIs(8);
Run Code Online (Sandbox Code Playgroud)
或者我只是需要遍历所有的向量元素并测试它们的值?
有没有办法以编程方式设置textStyle
属性TextView
?似乎没有一种setTextStyle()
方法.
要清楚,我不是在谈论View/Widget样式!我在谈论以下内容:
<TextView
android:id="@+id/my_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello World"
android:textStyle="bold" />
Run Code Online (Sandbox Code Playgroud) 我有两个表,table1
是一列父表ID
,并table2
与一列IDFromTable1
(而不是实际的名称),当我把一个FK上IDFromTable1
,以ID
在table1
我得到的错误Foreign key constraint is incorrectly formed error
.如果table1
记录被删除,我想删除表2记录.谢谢你的帮助
ALTER TABLE `table2`
ADD CONSTRAINT `FK1`
FOREIGN KEY (`IDFromTable1`) REFERENCES `table1` (`ID`)
ON UPDATE CASCADE
ON DELETE CASCADE;
Run Code Online (Sandbox Code Playgroud)
如果需要任何其他信息,请与我们联系.我是mysql的新手
我有一个AsyncTask
我执行的类,它从网站下载大量数据.
如果最终用户在使用时数据连接速度非常慢或不稳定,我想AsyncTask
在一段时间后进行超时.我的第一个方法是这样的:
MyDownloader downloader = new MyDownloader();
downloader.execute();
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
@Override
public void run() {
if ( downloader.getStatus() == AsyncTask.Status.RUNNING )
downloader.cancel(true);
}
}, 30000 );
Run Code Online (Sandbox Code Playgroud)
启动后AsyncTask
,一个新的处理程序被启动,将取消AsyncTask
30秒后,如果它仍在运行.
这是一个好方法吗?或者内置的AsyncTask
内容是否更适合此目的?
在Android(Java)中,如何打印出完整的堆栈跟踪?如果我的应用程序从nullPointerException或其他东西崩溃,它会打印出一个(几乎)完整的堆栈跟踪,如下所示:
java.io.IOException: Attempted read from closed stream.
com.android.music.sync.common.SoftSyncException: java.io.IOException: Attempted read from closed stream.
at com.android.music.sync.google.MusicSyncAdapter.getChangesFromServerAsDom(MusicSyncAdapter.java:545)
at com.android.music.sync.google.MusicSyncAdapter.fetchDataFromServer(MusicSyncAdapter.java:488)
at com.android.music.sync.common.AbstractSyncAdapter.download(AbstractSyncAdapter.java:417)
at com.android.music.sync.common.AbstractSyncAdapter.innerPerformSync(AbstractSyncAdapter.java:313)
at com.android.music.sync.common.AbstractSyncAdapter.onPerformLoggedSync(AbstractSyncAdapter.java:243)
at com.google.android.common.LoggingThreadedSyncAdapter.onPerformSync(LoggingThreadedSyncAdapter.java:33)
at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:164)
Caused by: java.io.IOException: Attempted read from closed stream.
at org.apache.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:148)
at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:159)
at java.util.zip.GZIPInputStream.readFully(GZIPInputStream.java:212)
at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:81)
at java.util.zip.GZIPInputStream.<init>(GZIPInputStream.java:64)
at android.net.http.AndroidHttpClient.getUngzippedContent(AndroidHttpClient.java:218)
at com.android.music.sync.api.MusicApiClientImpl.createAndExecuteMethod(MusicApiClientImpl.java:312)
at com.android.music.sync.api.MusicApiClientImpl.getItems(MusicApiClientImpl.java:588)
at com.android.music.sync.api.MusicApiClientImpl.getTracks(MusicApiClientImpl.java:638)
at com.android.music.sync.google.MusicSyncAdapter.getChangesFromServerAsDom(MusicSyncAdapter.java:512)
... 6 more
Run Code Online (Sandbox Code Playgroud)
但有时,出于调试目的,我想从代码中的位置记录完整的堆栈跟踪.我想我可以这样做:
StackTraceElement trace = new Exception().getStackTrace();
Log.d("myapp", trace.toString());
Run Code Online (Sandbox Code Playgroud)
但是这只是打印出指向对象的指针......我是否必须遍历所有堆栈跟踪元素才能将它们打印出来?或者有一种简单的方法可以将它全部打印出来吗?
当我切换到横向模式(NUMPAD 7或CTRL+ F11)时,模拟器将屏幕旋转到横向,但Android操作系统和所有应用程序都不会旋转.所以一切都在侧身.是否需要设置AVD配置中的某些内容才能使设备正常旋转?
我有以下基本布局
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/title_bar_background">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textAppearance="?android:attr/textAppearanceLarge"
android:padding="10dp"
android:text="HELLO WORLD" />
</LinearLayout>
<LinearLayout>
Run Code Online (Sandbox Code Playgroud)
似乎xml是正确的,但文本是左对齐的.textview占用父级的整个宽度,textview设置为居中.不确定是什么问题...