我想用一个.interp段编译一个共享库。
#include <stdio.h>
int foo(int argc, char** argv) {
printf("Hello, world!\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我正在使用以下命令。
gcc -c -o test.o test.c
ld --dynamic-linker=blah -shared -o test.so test.o
Run Code Online (Sandbox Code Playgroud)
我最终没有INTERP段,就好像我从未通过过该--dynamic-linker=blah选项一样。用检查readelf -l test.so。生成可执行文件时,链接器会正确处理该选项,并将INTERP段放在程序头中。如何使它也适用于共享库?
请在那块令人费解的模板意大利面上点亮一些:
template <typename T, typename K> class A {
public:
T t;
K k;
template <int i, int unused = 0> struct AttributeType {
};
template <int i> AttributeType<i> getAttr();
};
template <typename T, typename K> template <int i> A<T, K>::AttributeType<i> A<T, K>::getAttr<i>() {
return t;
}
Run Code Online (Sandbox Code Playgroud)
我无法提出正确的语法来定义实现A::getAttr().当前代码无法在getAttr定义行编译:
error: function template partial specialization ‘getAttr<i>’ is not allowed
我该如何重新定义函数定义?
即时开发一个应用程序,其中gridview包含按钮列表...
当我在gridview中放置图像而不是按钮然后onItemClickEvent被解雇..但如果我在gridView中放置按钮然后点击事件没有被调用...我不知道是什么问题...即使我没有得到例外..
这是我的代码......
public class MainMenu extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GridView gridview = (GridView) findViewById(R.id.mainMenu);
gridview.setAdapter(new ImageAdapter(this));
gridview.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
Toast.makeText(MainMenu.this, "hello" + position, Toast.LENGTH_SHORT).show();
}
});
}
//inner class for adapter
class ImageAdapter extends BaseAdapter {
private Context mContext;
public ImageAdapter(Context c)
{
mContext = c;
}
public int getCount() {
return …Run Code Online (Sandbox Code Playgroud)