可能重复:
为什么使用迭代器而不是数组索引?
string::iterator it;
for (it = str.begin(); it < str.end(); it++)
cout << *it;
cout << endl;
Run Code Online (Sandbox Code Playgroud)
为什么不:
for (int i = 0; i < str.size(); i++)
cout << str[i];
cout << endl;
Run Code Online (Sandbox Code Playgroud)
似乎string :: iterator也没有提供范围检查.我们为什么要使用string::iterator而不是索引?
谢谢.
在您看来,您遇到的最令人惊讶,奇怪,奇怪或真正的"WTF"语言功能是什么?
每个答案只能有一个功能.
我正在从Django缓存中删除单个路径,如下所示:
from models import Graph
from django.http import HttpRequest
from django.utils.cache import get_cache_key
from django.db.models.signals import post_save
from django.core.cache import cache
def expire_page(path):
request = HttpRequest()
request.path = path
key = get_cache_key(request)
if cache.has_key(key):
cache.delete(key)
def invalidate_cache(sender, instance, **kwargs):
expire_page(instance.get_absolute_url())
post_save.connect(invalidate_cache, sender = Graph)
Run Code Online (Sandbox Code Playgroud)
这有效 - 但有没有办法递归删除?我的路径看起来像这样:
Run Code Online (Sandbox Code Playgroud)/graph/123 /graph/123/2009-08-01/2009-10-21
只要保存了ID为"123"的图形,就需要使两个路径的缓存无效.可以这样做吗?
如何在同一例程中使用两个游标?如果我删除第二个游标声明和获取循环everthing工作正常.该例程用于在我的webapp中添加朋友.它需要当前用户的id和我们想要添加为朋友的朋友的电子邮件,然后它检查电子邮件是否具有相应的用户ID,如果不存在朋友关系,则会创建一个.除了这个之外的任何其他常规解决方案也会很棒.
DROP PROCEDURE IF EXISTS addNewFriend;
DELIMITER //
CREATE PROCEDURE addNewFriend(IN inUserId INT UNSIGNED, IN inFriendEmail VARCHAR(80))
BEGIN
DECLARE tempFriendId INT UNSIGNED DEFAULT 0;
DECLARE tempId INT UNSIGNED DEFAULT 0;
DECLARE done INT DEFAULT 0;
DECLARE cur CURSOR FOR
SELECT id FROM users WHERE email = inFriendEmail;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN cur;
REPEAT
FETCH cur INTO tempFriendId;
UNTIL done = 1 END REPEAT;
CLOSE cur;
DECLARE cur CURSOR FOR
SELECT user_id FROM users_friends …Run Code Online (Sandbox Code Playgroud) 什么都没有在Serializable等标记接口中实现..实施它有什么用?
有没有办法在点击取消按钮解雇winform时优雅地禁用errorprovider的验证?验证总是在文本框失去焦点时发生,并且我不想在用户单击取消按钮时验证它,当用户单击取消时验证它有点愚蠢.
我已经阅读了一些关于Bigtable和NOSQL的文章.他们避免JOIN操作非常有趣.
作为一个基本的例子,让我们采用Employee和Department表,并假设数据分布在多个表/服务器上.
只是想知道,如果数据分布在多个服务器上,我们如何进行JOIN或UNION操作?
$onethird = 1.0/3;
$fivethirds = 1.0/3+1.0/3+1.0/3+1.0/3+1.0/3;
$half = 1.0/2;
$threehalf = 1.0/2+1.0/2+1.0/2;
var_dump($onethird + $fivethirds == $half + $threehalf);
Run Code Online (Sandbox Code Playgroud)
哪个输出false,但我们都知道:5/3+1/3=2=3/2+1/2
如何解决这个问题?
我想实现以下内容:
import org.springframework.web.servlet.support.RequestContextUtils as RCU
class HomeController {
def home = {
def locale = RCU.getLocale(request)
render view: viewExists("home_$locale") ? "home_$locale": "home"
}
}
Run Code Online (Sandbox Code Playgroud)
boolean viewExists(String viewPath)如果输入参数指向有效的GSP或模板文件,那么返回true 的代码是什么?
我想使用OpenGL绘制许多球体(~100k).到目前为止,我正在做类似的事情
for (int i=0; i<pnum; i++){
glPushMatrix();
glTranslatef(bpos[i].x, bpos[i].y, bpos[i].z);
glCallList(DListSPHERE);
glPopMatrix();
}
Run Code Online (Sandbox Code Playgroud)
在使用适当的球体之前,我使用过GL_POINTS.这允许我glDrawArrays用一个包含所有非常有效点的数组调用.有没有比上面的代码更好的方法来绘制许多相同的对象?