由买买提看人间百态

topics

全部话题 - 话题: 指针
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
t****t
发帖数: 6806
1
来自主题: Programming版 - c++指针的问题
哪有这种事, 指针就是一个数字, 不可能禁止copy的
比如说, 一个整数10, 你现在要不许copy这个数, 哪有这种事情.
i***h
发帖数: 12655
2
来自主题: Programming版 - c++指针的问题
是。
不过C++里是分不同指针类型的,看来没法用这个信息。
X****r
发帖数: 3557
3
来自主题: Programming版 - c++指针的问题
那你为什么说“JAVA没有指针,真是有好处”?
N******7
发帖数: 1297
4
像是指针的数据类型错了。
a****l
发帖数: 8211
5
你确定后面三个数字是0吗?你可以用整数指针读一下后面的三个数,看是不是二进制
的0。有可能是什么东西越界了在后面三个数的地方写了不知道什么东西。
d******i
发帖数: 7160
6
好像所有的方法只能给出个迭代器,强制转为pair<>*是不行的。
那么是不是只要这个iterator不失效(在map里禁得住insert,delete的话),
就可以当做指针来用呢?
谢谢!
s*******a
发帖数: 8827
7
来自主题: Programming版 - C语言高级就高级在指针上
凡是没有指针的语言比如加瓦都要低一等的
s********k
发帖数: 6180
8
来自主题: Programming版 - C语言高级就高级在指针上
这话说反了,C是高级语言里面最低级的就是因为有指针。
s*******a
发帖数: 8827
9
来自主题: Programming版 - C语言高级就高级在指针上
我认为,如果能把c语言里的指针搞懂吃透了,对掌握程序语言来说就算入门了。再加
上掌握了OO的概念,基本就可以走遍天下了。
r****y
发帖数: 26819
10
来自主题: Programming版 - C语言高级就高级在指针上
那还是汇编最powerful,要么机器码最powerful。饶你啥指针,最后都尘归尘土归土。
d****i
发帖数: 4809
11
来自主题: Programming版 - C语言高级就高级在指针上
有指针的C和C++程序看起来很有美感,有一堆像“*, **, &, *[], ->”这样的操作,
不过用起来要脑子要清楚,要知道你自己在干什么,哈哈。
m********r
发帖数: 334
12
最近看源码很多调用最后都是用函数指针回调,有什么编辑器可以列出可能被调用的函
数?不需要运行时调试,当然如果有类似反射的功能就更好了。
b*****d
发帖数: 7166
13
来自主题: Programming版 - C++问题: 指针变量是哪里产生的?
class myc
{
...
public:
...
void donothing() {cout<<"I do nothing!"< };
int main()
{
myc *p=0;
p->donothing();
}
output:
I do nothing!
经我测试,default constructor, copy constructor, = assignment operator 都没
有被调用。而且指针为0,换成NULL也一样。但是却可以使用类的函数。
请问:p指向的object(这里其实都没有,因为是0)是怎么产生的?
g*********e
发帖数: 14401
14
来自主题: Programming版 - C++问题: 指针变量是哪里产生的?
只有access member variable的时候才用到p指针
g*********e
发帖数: 14401
15
来自主题: Programming版 - C++问题: 指针变量是哪里产生的?
只有access member variable的时候才用到p指针
b*****d
发帖数: 7166
16
来自主题: Programming版 - C++问题: 指针变量是哪里产生的?
谢谢!
我的问题是p指针变量的值应该是个地址。一般情况是个object的地址。但这里是0. 那
p是怎么找到member function的地址的?是系统产生了一个不完全的object交给p?还
是p可以直接在member function列表里找需要的函数,虽然p=0?

you
N******K
发帖数: 10202
17
来自主题: Programming版 - 问个c++ struct和指针问题
struct pixel
{
double a // 8 byte
double b // 8 byte
}
auto pointer = new pixel[10]
pointer += 9
这个计算 是怎么实现的
是不是 逻辑上相当于 **pointer += 9*16
**pointer是指针的值 uint64类型 内存单元为byte
b*******s
发帖数: 5216
18
来自主题: Programming版 - 问个c++ struct和指针问题
不管是原生的还是stl,指针加都是加sizeof(T),所以如果容器里实际进去的是派生类,
你要当心了
A*****i
发帖数: 3587
19
来自主题: Programming版 - 问个c++ struct和指针问题
操,老子还是喜欢挪指针啊,要GC去找爪哇好吗,没节操的
z****g
发帖数: 75
20
来自主题: Programming版 - 问个c++ struct和指针问题
先infer出来type, 然后那个type几个字节,就自动算了
你这个 express的语义就是:移动这个类型的指针向前9个单位,单位是编译器静态
type inference出来的
r**********e
发帖数: 273
21
嗦嘎...
那a和b呢?是指针指向位置的地址吗?
G**Y
发帖数: 33224
22
我不用指针10多年了,也是似懂非懂呀。
呵呵。
g*******1
发帖数: 103
23
输出的是a.b在Stack上的地址,在我的机子上指针是8字节的,Stack向下,b=a-8
w***u
发帖数: 17713
24
这是C的东西,玩C的指针必须学汇编,起码知道直接寻址间接寻址,那些加偏移量什么
的就随便了。
X******g
发帖数: 10
25
a,b是指针变量,既然是变量,本身就占有内存空间。&a,&b就是其空间的内存位置,和
a,b自身的值多少是两码事,况且这里a,b都没初始化,好的编译器应该报错或警告。
所以即使a,b的值互换,对于存储a,b的位置(也就是&a,&b)是不会有影响的。
l********k
发帖数: 14844
26
会用指针也不见得理解OS怎么管理内存
P*******L
发帖数: 2637
27
C/C++ 在这方面混乱得不是一点点,就别费心改进了。
定义两个指针:
int* a, * b;
而不是
int* a, b;
这个问题你觉得如何解决?
S*A
发帖数: 7142
28
这个在 C 定义是完全没有问题的。
*p * *q,中间那个是乘号。一头一位是dereference。
这个取决于 * 作用的type。
看习惯了就没有问题了。一般人会留空格提示优先关系。
实在不爽可以 (*p) * (*q)
C++ 操作符号的函数调用依赖操作对象的类型不要太多。
操作符overwrite。
*p 不是永远可以用 p[0] 替代,我举个例子:
int (*p)(void);
然后statment 调用函数指针可以写:
(*p)();
但是不可以写
(p【0】)();
也不可以写 p[0]()
n****l
发帖数: 1739
29
各位大牛就不要鸡蛋里挑骨头了。knuth大牛说了:指针是非常了不起的抽象。
我觉得学好C比学好functional programming有用。
S*A
发帖数: 7142
30
->只能用在结构指针撒。
y**b
发帖数: 10166
31
父类B,子类D,用父类指针进行操作实现多态B *pB1 = new D;
现在想复制一个子类对象来做其它用途,B *PB2 = new B(*PB1),
但是这样得到的PB2显然被截短了?
若改成new D(*PB1)则编译都通不过。
p***o
发帖数: 1252
32
来自主题: Programming版 - C++含有指针成员的类
forward declare的类通常不该这个类删。学着用智能指针吧。

called
y**b
发帖数: 10166
33
来自主题: Programming版 - C++含有指针成员的类
感觉C++这点有点问题:A类用到B类,B类也用到A类,总有一个要forward declaration
,就会出现这个问题。感觉一个语言不应该这样啊。
当然我可以改变设计,把互相作用的部分设计成一个新类,可是这样:
1.物理概念上就不算好。虽然抽象上不能说不算好,也可能不好,也可能很好。
2.就算能够,重构代码也很麻烦。C++还是需要module。
智能指针我试试。
b***i
发帖数: 3043
34
来自主题: Programming版 - C++含有指针成员的类
我怎么觉得你如果按照C++通常的写法不会有问题的。我说的就是把类的定义写全,而
不是仅forward声明。所以你不需要智能指针。

declaration
p***o
发帖数: 1252
35
来自主题: Programming版 - C++含有指针成员的类
1 std::shared_ptr使用的时候不需要完整类型。
2 上面那个so连接里连copy ctor/assignment都不知道要写,还是老老用智能指针把。
y**b
发帖数: 10166
36
来自主题: Programming版 - C++含有指针成员的类
智能指针和std::move都是好东西,没有疑义,我要尽量熟悉使用。c++11出来很久了,
一直没空学习,感觉好东西还不少。
话说java怎么就没这么复杂呢,纯粹是因为c++对性能有高要求的缘故吗?
b***i
发帖数: 3043
37
来自主题: Programming版 - C++含有指针成员的类
我觉得应该是指针还有效的才能看到计数。
试验两句就懂了
在第一个{}里面去掉把ptr2加入的语句。可以看到,ptr2所指向的对象在reset那里被
销毁了
然后第二个{}那里,
std::cout << " but list1 has " << ptrList[0].use_count() << std::endl;
虽然ptr1不能访问那个A对象实例了,在vector哪里呢。所以不能执行析构函数。
那个不用smartptr的例子呢?
b***i
发帖数: 3043
38
来自主题: Programming版 - C++含有指针成员的类
行为一样。你把智能指针复制到了vector里面增加了A的计数。如果你把ptrList.push_
back(ptr2)注释掉,就发现ptr2.reset()也同样调用dtor.

发帖数: 1
39
感觉谈不上陷阱,MPI也没法知道什么时候才可以delete,毕竟绝大部分情况下vector
里面都不会存指针的。
我觉得你这种情况,只要养成一个好的习惯,拿到recvVec后立刻转成装unique_ptr的
vector就好了。
y**b
发帖数: 10166
40
来自主题: Programming版 - 容器中放置智能指针一问
请看伪码:
class A;
class B {
std::vector> aVec;
public:
do() {
for (int i = 0; i < 1000000; ++i) {
for (int j = 0; j < 1000; ++j) {
// method 1, rValue
// aVec.push_back()std::unique_ptr(new A(j));
// or method 2:
std::unique_ptr
ptr(new A(j)); // lValue
aVec.push_back(std::move(ptr)); // must use move
}
// use aVec
// memory released at the end of each outer loop?
// if...
阅读全帖

发帖数: 1
y**b
发帖数: 10166
42
来自主题: Programming版 - 容器中放置智能指针一问
对,这是最大好处。只是我那个代码用不到这个好处,因为bObj在程序运行期间一直不
销毁。
看来结论是,还是应该用智能指针。
j******d
发帖数: 70
43
pdf 全屏的时候,那个白色小手做指针太不起眼了。
能换成别的颜色吗?谢谢。
x*********l
发帖数: 594
44
来自主题: Computation版 - matlab有类似指针的东西吗?
有很大的矩阵作为函数的参数,不知道有没有类似C指针或者reference的东西。如果
matlab要拷贝矩阵的话,就太浪费了。
r******g
发帖数: 4
45
在一个已经打开的无格式文件中,如何指定指针到第N行,而不是从上一个记录结束的位
置开始读取数据。谢谢
h**6
发帖数: 4160
46
来自主题: JobHunting版 - 【Google字符串面试题】
我的方法是先找到第一个包含所有字符的子字符串,用两个指针分别指向子串头尾,一
个数组统计各字符出现次数。此后首先考虑移动左指针。
1.左指针移动,每次右移更新子串最短长度。
1)若左指针指向字符不是B串中字符,左指针右移;
2)若左指针指向字符是B串中字符,且在子串中出现次数不止一次,左指针右移并减去
一次出现次数;
3)若左指针指向字符是B串中字符,且只在子串中出现一次,左指针不动,换右指针。
2.右指针移动。
1)若右指针指向字符不是B串中字符,右指针右移;
2)若右指针指向字符是B串中字符,且不是左指针指向的字符,右指针右移并增加一次
出现次数;
3)若右指针指向字符是B串中字符,且是左指针指向的字符,右指针右移并增加一次出
现次数,换左指针。
s********t
发帖数: 4150
47
华盛顿视日本为美国在亚洲的头号盟友,美日同盟总是被双方挂在嘴边。日本首相安倍
晋三访美,在美国国会大谈同盟之谊,双方还推出新版《美日防卫合作指针》,哥俩好
的场面好不欢欣。但回过头来,有美国学者反思,美国从美日同盟中一无所获,甚至还
赔上了不少国家利益。不仅如此,新版《美日防卫合作指针》着着实实把美国玩了一把
,使美国陷入“赔本还挨骂”的境地。
《赫芬顿邮报》9日转引美国前总统罗纳德·里根的特别助理道格·班多的一篇分析文
章,认为美日同盟的深入,美国被日本推到了对抗中国的前沿,这不符合美国的国家利
益。这篇文章从历史角度、从国家利益角度、从地缘政治角度分析了美日同盟的方方面
面,讲述了美国对日政策的失误以及日美防卫合作的真实意图,委婉地暗示奥巴马在美
日同盟问题上太天真以至被蒙骗、甚至被卷入日本设计的圈套。
一问:信安倍还是信民意?
70年前,二战结束。随后,是美国占领当局推动出台了《和平宪法》第九条,禁止日本
拥有军队。虽然后来的多届日本政府通过宪法解释条款催生出“自卫队”这样一支独特
的防务力量,但总体而言,历届政府还是谨慎地限制了自卫队的角色和预算。但安倍上
台以来,拿朝鲜和中国... 阅读全帖
J*******3
发帖数: 1651
48
Win8.1 Update下的WIMBoot安装教程+原理解析
在Win8系统出现的时候就有不少同学抱怨,系统盘需要的空间太大了!再安装个更新、
Metro应用之类的,50G以上的占用是轻轻松松了。这导致后期硬盘空间较小的Surface
之类Win8平板上市后的观望氛围浓郁!不过近期微软发布了WIMBOOT镜像启动方式,可
以轻松解决以上问题,经过尝试,通过这种安装方法安装后的系统还不到4G硬盘空间占
用!
WIMBoot是什么?
WIMBoot全称Windows Image Boot镜像启动,与传统的Windows安装要将镜像(WIM)
文件中的所有Windows文件解压释放不一样,WIMBoot不会WIM安装文件进行解压缩,在
安装完成之后,你的C盘直接包含了Windows、应用程序和所有数据.
它是如何工作的?
它是将WIM文件拷贝到一个单独的镜像分区(就像恢复镜像一样),然后使用DISM创
建从C盘到WIM文件的指针文件,这些指针文件是看不到的,但它们会告诉Windows如何
启动操作系统.
这就意味着安装文件大小本身就代表着磁盘的占用量,甚至这个的WIM文件还... 阅读全帖

发帖数: 1
49
来自主题: JobHunting版 - Re: leetcode第829题最优解
问题:输入一个整数N,请问有多少种不同的方法把若干个连续的整数相加使得它们的
和为N?例如输入N=9,由于9 = 9、9 = 4 + 5、9 = 2 + 3 + 4,因此正确的输出是3。
分析:这是LeetCode第829题。
解法一:时间复杂度O(n)
我们可以想象有一个整数数组,数组里的第一个数字是1,第二个数字是2,以后的数字
以此类推。再假设有两个指针,第一个指针初始化指向数组的第一个数字,第二个指针
初始化指向数组的第二个数字。这两个指针就定位了一个子数组,该子数组由两个指针
之间的所有数字(包括两个指针指向的数字)组成。由于数组里的数字是连续递增的,
那么两个指针之间的任意子数组的数字也是连续递增的。
如果两个指针之间的子数组的所有数字之和小于输入的整数N,我们希望这个子数组包
含更多的数字,于是把第二个指针向右移动。每把第二个指针向右移动一位,相当于往
子数组的最右边添加一个新的数字,子数组的数字之和也会相应变大。如果此时子数组
的和仍然小于N,我们继续向右移动第二个指针。
如果子数组的和等于N,我们就找到了一个符合条件的子数组。接下来可以继续向右移
动第二个指针去寻找其... 阅读全帖
V*********r
发帖数: 666
50
4月26日,日本首相安倍晋三开始了其从政生涯中最重要的一次访问——长达8天时间的
对美国访问。之所以说这是安倍政治生涯中最重要的一次访问,原因不仅仅在于访问的
是美国以及访问时间长达8天,更重要的是,这是美日战略合作上的一次重大突破。这
次突破,已是图穷匕见,明显剑指中国。这次访问,将会影响整个东亚甚至世界格局。
对日本来说,安倍是在拿国运在赌博;对美国来说,是要在世界霸权道路上做最后一搏
。对日本来说,这一搏意味着未来可能和中国爆发冲突甚至战争,成功意味着日本有了
再次成为世界性大国的机会,重新做二战前的帝国梦;失败,则意味着日本国家将面临
被肢解甚至逐渐消失。对美国来说,与日本这次的合作,就是其帝国主义最后的一搏,
成继续帝国下去;败,则意味着美股将失去全球霸主地位,变成区域性大国,甚至也有
解体的可能。
当然,美日剑指中国,如果中国成功突破美日的围堵、围猎,则中国将一跃成为世界上
实力最强的国家,中华民族完成伟大复兴,人类世界在西方统治了500年左右的时间后
将彻底终结,一个新的、没有霸权主义的人类社会新世界将诞生;反之,中国若失败,
则意味着跌入中等收入陷阱,中国国家部分地区可... 阅读全帖
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)